是的,有一种方法可以在控制台(屏幕)和文件中显示单个命令输出。使用您的示例,使用...
@ECHO OFF
FOR /F "tokens=*" %%I IN ('DIR') DO ECHO %%I & ECHO %%I>>windows-dir.txt
详细说明:
该FOR命令将命令或文本的输出解析为变量,可以多次引用该变量。
对于诸如的命令,请DIR /B用单引号引起来,如下例所示。将DIR /B文本替换为所需的命令。
FOR /F "tokens=*" %%I IN ('DIR /B') DO ECHO %%I & ECHO %%I>>FILE.TXT
要显示文本,请用双引号引起来,如下例所示。
FOR /F "tokens=*" %%I IN ("Find this text on console (screen) and in file") DO ECHO %%I & ECHO %%I>>FILE.TXT
...以及换行...
FOR /F "tokens=*" %%I IN ("Find this text on console (screen) and in file") DO (
ECHO %%I & ECHO %%I>>FILE.TXT
)
如果您有时只希望在控制台(屏幕)上输出,而有时只希望将输出发送到文件,而有时又希望同时发送给两个文件,请使用变量指定FOR循环的“ DO”子句,如下所示%TOECHOWHERE%。