2014-04-14 111 views
1

下面的代碼我想要做什麼,當我在命令提示符下執行,但不是當我把它放在一個.bat文件,並嘗試執行它:代碼,在命令提示符並不在批處理文件工作

for /f %a in ('dir /b *.csv') do for /f "tokens=*" %b in (%a) do echo %b,%a >> all.csv 

我錯過了什麼。還有一種方法可以讓它完成它的功能,而不必在命令提示符窗口中顯示循環中的每一步。對不起,我是新手!

回答

1

在批處理文件中 - 與在命令提示符下相反 - for變量需要兩個 %%符號,例如, %%a

要關閉命令的呼應,因爲它們可以被執行,將下面的線在頂部您的批處理文件:@echo off

注意,前面加上@是抑制命令回顯的特別的方式;在這種情況下,它被用來防止echo off本身被回顯。

+0

這是正確的,謝謝你mklement0。不要以爲你知道問題的第二部分?還有一種方法可以讓它完成它的功能,而不必在命令提示符窗口中顯示循環中的每一步。 – bjbreitling

+0

@bjbreitling:剛剛更新了我的答案。 HTH。 – mklement0

+0

再次非常感謝。我已經看到了,但從第一次修復以來還沒有嘗試過! – bjbreitling

相關問題