当前目录为C:\
。
如果我跑
for /L %i in (1,1,3) do cd
我得到以下输出:
C:\>cd
C:\
C:\>cd
C:\
C:\>cd
C:\
如果我跑
echo off && for /L %i in (1,1,3) do cd && echo on
我得到以下输出:
C:\
C:\>cd && echo on
C:\
C:\>cd && echo on
C:\
(echo off
仅适用于第一次迭代)
如果我跑
echo off && for /L %i in (1,1,3) do cd
我得到以下输出:
C:\
C:\
C:\
这很好,但是用户必须键入echo on
才能返回命令提示符(这不行)。
在执行for ... do
的最后一个命令之前,我不想得到提示。但在那之后,我想恢复命令提示符。
如何获得以下输出(空行无关),最后返回命令提示符?
C:\
C:\
C:\
我想要一个适用于 cmd (不使用PowerShell)的解决方案,而不是批量文件。
答案 0 :(得分:0)
我找到了解决方案。我只需要为for
命令使用一些括号,这样echo on
只会在循环后执行:
echo off && (for /L %i in (1,1,3) do cd) && echo on
输出:
C:\
C:\
C:\