有時候需要在 Windows 設定排程執行批次檔。但是很麻煩的是,如果你登入後,就會一直看到命令提示字元跳出來,然後執行完之後又消失,其實是很擾人的一件事情。
還好有個方法,就是透過 WScript 裡面的 Shell 來作。
方法很簡單,有人提供了一個 invis.vbs,用法很簡單,就是
wscript invis.vbs your-batch-file.cmd
若是要排一個每小時執行一次的話,就透過 SCHTASKS 比較方便
SCHTASKS /Create /SC HOURLY /TN Veritas-Update /TR "wscript C:\path\to\invis.vbs C:\patch\to\your-batch-file.cmd"
這邊要注意的是,因為執行的路徑預設都在 system32 下,所以要指定 完整路徑,避免找不到檔案喔!!
如果下載被擋掉,可以直接複製下面的語法:
set args = WScript.Arguments num = args.Count if num = 0 then WScript.Echo "Usage: [CScript | WScript] invis.vbs aScript.bat <some script arguments>" WScript.Quit 1 end if sargs = "" if num > 1 then sargs = " " for k = 1 to num - 1 anArg = args.Item(k) sargs = sargs & anArg & " " next end if Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.Run """" & WScript.Arguments(0) & """" & sargs, 0, False