2017-05-29 29 views
0

我有一個循環遍歷文件,然後輸出到另一個文件,但我需要輸出單詞「返回」到文件。批量回顯單詞返回到文件

For /F "usebackq tokens=1-2 delims=," %%a in (%filein%) Do (
echo if (%%a) return %%b; >> %fileout% 
) 

我不斷收到「回報在這個時候是意外的」我已經嘗試了^和引號的變體,我沒有運氣。 有誰知道如何在文件中回顯單詞「return」?謝謝

+0

你忘了第二個迴音 – Marged

+1

你把「^」放在哪裏?你只需要''%''''''''''''''''''''''''''''之前。 – SomethingDark

+0

它是導致問題的單詞返回 – jhecht

回答

0

二者必選其一

For /F "usebackq tokens=1-2 delims=," %%a in (%filein%) Do (
    echo if (%%a^) return %%b;>> %fileout% 
) 

For /F "usebackq tokens=1-2 delims=," %%a in (%filein%) Do echo if (%%a) return %%b;>> %fileout% 

右括號)在代碼輸出由ECHO由Windows命令解釋器解釋爲身體的命令塊結束FOR命令。解決方案是用脫字符^將其轉義爲被解釋爲文字字符。

在第二個版本中,直接指定要執行的單個命令FOR,而不使用任何命令塊。

同樣如此空間也輸出由ECHO並且因此也寫爲尾隨空間分成輸出文件分號和重定向符>>之間的空間被移除。

+0

Mofi謝謝你Mofi Mofi謝謝你!!!!! – jhecht

+0

「謝謝」評論被認爲是非建設性的,因爲@莫菲說,你應該查看鏈接和常見問題部分。 – SteveFest