我可以使用redirection運算符將命令行命令的輸出重定向到文件。批處理文件 - 將命令和輸出重定向到一個文件
dir >> sample.txt 2>&1
但只是輸出被重定向。我還想將執行的命令寫入文件(上例中的dir),以便日誌文件顯示執行的命令和輸出。
我能想到的一種方法是將命令存儲在字符串中,將字符串重定向到文件,然後執行該字符串,以便輸出重定向。有沒有更簡單的方法來做到這一點?
我可以使用redirection運算符將命令行命令的輸出重定向到文件。批處理文件 - 將命令和輸出重定向到一個文件
dir >> sample.txt 2>&1
但只是輸出被重定向。我還想將執行的命令寫入文件(上例中的dir),以便日誌文件顯示執行的命令和輸出。
我能想到的一種方法是將命令存儲在字符串中,將字符串重定向到文件,然後執行該字符串,以便輸出重定向。有沒有更簡單的方法來做到這一點?
你可以簡單地使用ECHO ON
。
@echo off
call :commandAndOutput > out.txt
exit /b
:commandAndOutput
echo on
cd
dir
@echo off
exit /b
我會做的是雙倍你的命令。首先將ECHO寫入>>您的文件,然後是沒有回聲的相同的東西。例如。
ECHO "DISM /get-mountedwiminfo" >> B:\Sample.txt
DISM /get-mountedwiminfo >> B:\Sample.txt
結果在文本文件中。
DISM /get-mountedwiminfo
Deployment Image Servicing and Management tool
Version: 6.1.7600.16385
Mounted images:
No mounted images found.
The operation completed successfully.
您可以構建自己的命令。例如,您創建一個ddir.bat
這樣的:
@echo off&cls
echo %cd%^> dir %*
dir %*
,然後在地方調用dir
你打電話給你的新命令
ddir *.* /b > output.txt
這將這樣的伎倆