我有一個bat文件正在讀取另一個txt文件,並將值發送到外部exe文件,該文件生成一個輸出文件與這些命令。批量命令使用txt文件的第一行來創建一個文件
for /f "tokens=*" %%A in (data.txt) do (
:start
XYZ.exe %%A)
和data.txt中的內容是這樣的:
abc 1 2
xyz 2 3
現在,我的編輯這樣的data.txt中:
name of file: mp3
abc 1 2
xyz 2 3
name of file: mp4
sss 1 2
rrr 2 3
name of file: vob
eee 1 2
qqq 2 3
,我需要使用文件的名稱來創建一個擴展名的文件,每次都要在最後添加。
編輯:
我主要是需要找到一種方法,我可以每次談到時間保存在變量文件名的值。所以,例如在上面的文本文件中,當我運行批處理時,它會看到文件的名稱是否存在。如果它存在,那麼它將在上面的情況下保存該值,即mp3並保存它,然後調用XYZ.exe直到文件的名稱不再來。一旦新的文件名出現,一個方法會調用哪個將XYZ生成的兩個輸出合併成兩個參數,並將它們合併到一個文件中,並將該文件的擴展名附加到mp3中。
然後再次新的文件名將被保存在相同的變量中,並且過程繼續。
如果data.txt中沒有此文件名的單個實例,則擴展名將爲結果文件的txt。我認爲現在應該清楚了。請讓我知道更多的澄清..
由於我們不知道'xyz'程序如何接受輸出文件名,所以我們無法真正幫助您。我必須四次閱讀這個問題才能瞭解你正在嘗試的內容。 – Joey
XYZ程序只需要三個參數並返回一個文件。這並不是真正的問題。我只需要附加擴展名與生成的文件。問題是我們如何檢測到data.txt文件中有新的文件名,我們需要停止處理更多命令,並將此擴展名附加到生成的文件中。 – NitinG
仍然清晰如泥。 – dbenham