windows win10 ping 帶時間戳
阿新 • • 發佈:2020-08-12
簡化版
@echo off set /p host=host: set logfile=ping_%host%.log echo Target Host=%host% > %logfile% :loop for /f "tokens=* skip=2" %%A in ('ping %host% -n 1') do ( echo %date:~0,-3% %time:~0,-3% %%A>>%logfile% echo %date:~0,-3% %time:~0,-3% %%A timeout /t 1 /nobreak>nul goto loop ) pause>nul
註解版
::這是註釋 檔名 test.bat @echo off ::關閉回顯 set /p host=myhost: ::輸入host,即你要ping的地址 set logfile=ping_%host%.log ::設定檔名 要重用set設定的變數 需要兩邊包裹% echo Target Host=%host% > %logfile% :: echo 輸出命令 > 指定輸入的物件 :: 輸出 Target Host=你輸入的host值 到 檔案 ::沒有 > 檔名 ,預設輸出到螢幕; >nul 輸出到無,不要顯示語句 ::增強for迴圈 ::tokens 選擇一行中的分割好的部分 *剩餘全部 ::skip 跳過開頭幾行 ::%date:~0,-3% 日期字串從第一個到倒數第三個 ::>>a.txt 追加到a.txt裡 ::>a.txt 無建立a.txt,有清空a.txt ::echo str 輸出字串 ::echo str >>filename 輸出字串到檔案 ::timeout /t waittime /nobreak>nul 等待時間waittime 期間無法停止 >nul 意思不要列印到命令視窗 不顯示 :: ":loop" "goto loop" 迴圈 :: pause>nul 按任意鍵繼續,不顯示提示 :loop for /f "tokens=* skip=2" %%A in ('ping %host% -n 1') do ( echo %date:~0,-3% %time:~0,-3% %%A>>%logfile% echo %date:~0,-3% %time:~0,-3% %%A timeout /t 1 /nobreak>nul goto loop ) pause>nul