我想讀取存儲在一系列.txt文件(格式相同的方式)中的值,作爲參數遵循另一個命令。如果IN(...)直接引用單個文本文件(最後一個空行除外),則一切正常。 結果:如何讀取文件內容作爲參數批處理文件
[1] = "TestValue11"
[2] = "TestValue21"
[3] = "TestValue31"
[1] = "TestValut12"
[2] = "TestValue22"
[3] = "TestValue32"
[1] = ""
[2] = ""
[3] = ""
TestName.txt樣子:
TestValue11 TestValue21 TestValue31
TestValut12 TestValue22 TestValue32
但是,當我想設置的路徑TestName.txt放在另一個目錄比%〜DP0,讓我們說 「輸入」 ,只有filname被作爲第一個參數。循環不再進入文件。
我已經試過路徑放置IN ()
如下:
IN ("%~dp0input\*.txt")
或
IN ('DIR /A-D /B "%~dp0input\*.txt"')
你能幫我做這個循環更加有用,從許多文件值可以readed ?
空值是因爲循環結束後,腳本仍然通過'Process'命令。您可以在'Process'標籤之前添加一個'goto:eof'。 –
另外,您不需要在'input \'路徑前引用'%〜dp0' ...只需像沒有'%dp0'那樣放置目錄路徑。用'@echo on'運行你的腳本,這樣你就可以看到真正發生了什麼。 –
'%〜dp0'是批處理文件本身的父目錄;使用任何路徑,就像'IN(「\ path \ to \ your \ file.txt」)',因爲你已經指定了'usebackq'選項;注意''for/F'不支持通配符,如'*'和'?',所以如果指定'* .txt','for/F'會嘗試找到一個名爲'* .txt'的文件,這個文件找不到當然... – aschipfl