2015-01-13 85 views
0

我發現這個命令循環中的所有目錄在當前文件夾:CMD忽略批處理文件中的%符號 - 爲什麼?

FOR /D %G in ("assets\*") DO echo %G 

它的工作原理,當我鍵入它CMD,但是當我將它保存在一個test.bat並運行該文件,我得到:

C:\Projects>test.bat 
G was unexpected at this time. 

發生了什麼事?

回答

2

在批處理文件中,您必須改用%%。這是因爲單個百分比用於批處理文件和環境變量的命令行參數。解析器不是很好,所以我們必須逃避for變量的百分號。

這也記錄在help for在第三段:

在批處理程序使用FOR命令,指定%%變量而不是%變量的 。

+0

太棒了,謝謝! (當我讓我時,我會接受你的回答......它說我必須等待一段時間) – Malki

相關問題