使用 rd 进行推送无法按我期望的方式工作

使用 rd 进行推送无法按我期望的方式工作

我试过这样

pushd \\somedrive.se\Install\Paket\XXX\
echo "start..."
for /f %i in ('dir /a:d /b bu* ') do echo /q %i
popd

从脚本运行时得到以下输出:

Z:\Paket\XXX>echo "start..."
"start..."
/b was unexpected at this time.
Z:\Paket\XXX>for /f d /b bu* ') do echo /q i

但是如果我直接在命令窗口中执行此操作,它会起作用吗?

Z:\Paket\XXX>for /f %i in ('dir /a:d /b bu* ') do echo /q %i
Z:\Paket\XXXX>echo /q bu.1_2.zip
/q bu.1_2.zip

我究竟做错了什么?

答案1

这与 无关pushd
从批处理运行时(而不是直接从 cmd 行运行)需要使用双百分号,因此它应该变成:
for /f %%i in ('dir /a:d /b bu* ') do echo /q %%i

质谱参考:https://technet.microsoft.com/en-us/library/cc754900.aspx

相关内容