Windows批处理文件不起作用

时间:2013-05-13 09:42:29

标签: windows file batch-file

我有一个批处理文件,但它不起作用。有趣的是,在cmd窗口内部运行时,所有命令都有效。

批处理文件中的非工作 - 故障行:

    for /F %%i in ('dir /B C:\Users\Jacek2\Desktop\USB\test\1\depesza*') do (
move /Y C:\Users\Jacek2\Desktop\USB\test\1\"%%i" C:\Users\Jacek2\Desktop\USB\test\1\depesza.cvs && start /wait E:\EasyPHP-12.0\mysql\bin\mysqlimport.exe --columns=typ_raportu,kod_stacji --user=root --password= --host=127.0.0.1 --fields-enclosed-by="\"" --fields-terminated-by="," --fields-escaped-by="" test C:\Users\Jacek2\Desktop\USB\test\1\depesza.csv)

从CMD窗口:

    c:\>for /F %i in ('dir /B C:\Users\Jacek2\Desktop\USB\test\1\depesza*') do move
/Y C:\Users\Jacek2\Desktop\USB\test\1\"%i" C:\Users\Jacek2\Desktop\USB\test\1\de
pesza.cvs && start /wait E:\EasyPHP-12.0\mysql\bin\mysqlimport.exe --columns=typ
_raportu,kod_stacji --user=root --password= --host=127.0.0.1 --fields-enclosed-b
y="\"" --fields-terminated-by="," --fields-escaped-by="" test C:\Users\Jacek2\De
sktop\USB\test\1\depesza.cvs

当我从批处理文件中删除下面的代码时,批处理文件可以正常工作。

&& start /wait E:\EasyPHP-12.0\mysql\bin\mysqlimport.exe --columns=typ_raportu,kod_stacji --user=root --password= --host=127.0.0.1 --fields-enclosed-by="\"" --fields-terminated-by="," --fields-escaped-by="" test C:\Users\Jacek2\Desktop\USB\test\1\depesza.csv)

有谁知道为什么?

2 个答案:

答案 0 :(得分:1)

试试这个。如果它不是cmd长度问题,那么进一步的双引号将被视为窗口标题。问题的主导“”停止了。

start "" and the rest of your command

答案 1 :(得分:0)

我建议使用&

转义每个^