bat指令碼輸出日誌的方法

2022-09-20 12:51:14 字數 2262 閱讀 8110

一,bat指令碼常用的的輸出命令是「echo 輸出內容」,可以利用echo將文字輸出到cmd視窗或檔案。bat指令碼是不區分大小寫的指令碼語言,因此大小寫都可以。

例如:rem 在命令列視窗輸出

echo hello world!

pause

則會在命程式設計客棧令行視窗輸出hello world!

通過bat開啟命令列視窗執行上面的命令還會輸出cmd執行相關的提示資訊。如果想關閉多餘的輸出可以用 @echo off,示例:

@echo off

rem 在命令列視窗純淨的輸出

echo hello world!

pause

二,輸出內容到檔案

可以使用重定向將輸出結果儲存到檔案中。

>>符號為兩個常用的重定向符號。>會將原始檔案的內容清空,>>會在檔案後面追加內容,如果檔案不存在則建立檔案。

具體使用方法如下

echo hello world >file.txt

echo hello world 1>file.txt

echo hello world 2>file.txt

執行後,會將hello world輸出到file.txt中。兩行**等價。其中1的意思是代表將標準輸出重定向,標準輸出即正常的輸出內容。而2>file.txt則代表將錯誤資訊輸出到file.txt中,這樣hello world會顯示在螢幕上,只有報錯的資訊會儲存在file.txt中。

三,輸出內容追加到檔案

示例:echo hello world >>file.txt

上面的語句使用了2,表示追加內容,如果file.txt內容不是空,則hello world會在最後一行的後面另起一行儲存。

四,將bat檔案的輸出結果放到txt檔案中

有時候我們會寫批處理執行過程,會集中輸出很多內容,又不想在bat裡面頻繁的試用輸出到檔案命令,怎麼辦呢?

我們可以嘗試下面的辦法:

@echo off

call "批處理路徑">d:\結果.txt

start notepad d:\結果.txt

rem 再例如下面這樣

@echo off

call "d:\procedure.bat">d:\結果.txt

start notepad d:\結果.txt

【例項】:

@echo off

echo 檢查並停止相關服務....

echo ------------------------------

for %%i in (wuauserv,yun-wps) do (

sc query "%%i" >nul && (

程式設計客棧 echo %date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,8%開始停止服務:%%i >>"%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%.txt"

net stop "%%i"

::@echo 開始解除安裝服務:%var%

::sc delete %var%

rem net start "%%i"

rem wmic service where www.cppcns.comname="%%i" get state|findstr /i "running" && ( echo %%i已啟動。 )||( echo %%i未啟動!請檢視日誌資訊。 )

)||(

echo %date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,8%服務不存在:%%i >"%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%.txt"

))echo 執行完成

rem pause

exit /b

將上面的指令碼複製到txt裡面,並另存為ansi格式,重新命名為:winservice-stop.bat,然後在相同目錄下新建乙個txt,複製下面這段:

set ws=wscript.createobject("wumvjacqscript.shell")

ws.run "winservice-stop.bat",0

將上面的指令碼複製到txt裡面,並另存為ansi格式,重新命名為:啟動bat檔案.vbs,它的作用是用了靜默啟動bat指令碼而隱藏cmd視窗,隱藏命令列視窗使使用者無感知。注意兩個檔案在同一目錄。

程式設計客棧;   然後我們在「計算機-管理-任務計畫程式」裡面新增乙個任務計畫,定時執行「啟動bat檔案.vbs」就可以自動關閉windows系統的自動更新啦。

總結本文標題: bat指令碼輸出日誌的方法

本文位址:

VB指令碼 BAT指令碼呼叫VB指令碼的方法

毫無疑問地,是懶惰促進或引領著人類科技的發展。工作中使用一些小工具可以大幅提高工作效率,釋放體力勞動,減少手工操作與守候時間,何樂而不為呢?在數通平台軟體的效能或功能穩定性測試過程中,經常需要用一台除錯機 一般是作業系統為 windows 的計算機 通過 securecrt 等遠端登入軟體,連線一台...

BAT指令碼重定向所有輸出到某個檔案的方法

最近遇到個問題,需要根據命令返回的資訊判斷這個命令是否執行成功,思路就是把所有的資訊重定向到乙個檔案裡面,然後查詢某個字串,可是因為這個命令後面有一堆的資訊,重定向如果加在命令後面就只能獲取最近的一條資訊,完蛋。例如 fastboot.exe writekeys會有如下的資訊 opening com...

shell指令碼實現分日誌級別輸出的方法

shell指令碼如何優雅的記錄日誌資訊,下面讓我們一步一步,讓shell指令碼的日誌也變得高階起來,實現如下功能 設定日誌級別,實現可以輸出不同級別的日誌資訊,方便除錯 日誌格式類似為 日誌級別 時間 funcname 函式名 lineno 行號 日誌資訊 不同級別,設定不同顏色 讓其變為函式庫檔案...