批处理之计划任务at和schtasks
windows有一個(gè)任務(wù)計(jì)劃程序,可以打開這個(gè)程序,創(chuàng)建定時(shí)的任務(wù)。windows提供了兩個(gè)命令行可以創(chuàng)建計(jì)劃任務(wù),分別是at和schtasks。schtasks被推薦用來替換at,并且at在win10操作系統(tǒng)中已經(jīng)不再支持。要使用命令行創(chuàng)建計(jì)劃任務(wù),必須保證計(jì)劃任務(wù)已經(jīng)在運(yùn)行。
1. at
1.1 語法
AT [\\computername] [ [id] [/DELETE] | /DELETE [/YES]] AT [\\computername] time [/INTERACTIVE][ /EVERY:date[,...] | /NEXT:date[,...]] "command"\\computername 指定遠(yuǎn)程計(jì)算機(jī)。如果省略這個(gè)參數(shù),會(huì)計(jì)劃在本地計(jì)算機(jī)上運(yùn)行命令。 id 指定給已計(jì)劃命令的識(shí)別號(hào)。 /delete 刪除某個(gè)已計(jì)劃的命令。如果省略 id, 計(jì)算機(jī)上所有已計(jì)劃的命令都會(huì)被刪除。 /yes 不需要進(jìn)一步確認(rèn)時(shí),跟刪除所有作業(yè)的命令一起使用。 time 指定運(yùn)行命令的時(shí)間。 /interactive 允許作業(yè)在運(yùn)行時(shí),與當(dāng)時(shí)登錄的用戶桌面進(jìn)行交互。 /every:date[,...] 指定在每周或每月的特定日期運(yùn)行命令。 如果省略日期,則默認(rèn)為在每月的本日運(yùn)行。 /next:date[,...] 指定在下一個(gè)指定日期(如,下周四)運(yùn) 行命令。如果省略日期,則默認(rèn)為在每月的本日運(yùn)行。 "command" 準(zhǔn)備運(yùn)行的 Windows NT 命令或批處理程序。1.2. 示例
1.2.1. 列出所有計(jì)劃任務(wù)
at1.2.2. 刪除所有計(jì)劃任務(wù)
at /delete /yes at /d /y at 2 /d rem /d /y為簡(jiǎn)寫 rem at 2 /d為刪除指定任務(wù)號(hào)1.2.3. 每個(gè)周二的上午8點(diǎn)執(zhí)行批處理
at 8:00 /every:M cmd /c d:/md.bat at 8:00 /every:M d:/md.bat rem 既可以通過cmd來執(zhí)行批處理,也可以直接運(yùn)行批處理文件 rem Specifies the date when you want to run the command. rem You can specify one or more days of the week (that is, type M,T,W,Th,F,S,Su) rem or one or more days of the month (that is, type 1 through 31). rem Separate multiple date entries with commas. If you omit Date, at uses the current day of the month.1.2.4. 每月3號(hào)0點(diǎn)執(zhí)行關(guān)機(jī)任務(wù)
at 00:00 /every:3 shutdown /s /t 0 rem shutdown /s /t 0屬于計(jì)劃任務(wù)執(zhí)行的命令行,/s關(guān)機(jī),/t 0延時(shí)0秒1.2.5. 每周一和周五0點(diǎn)執(zhí)行關(guān)機(jī)任務(wù)
at 00:00 /every:M,F shutdown /s /t 0 rem /every:M,F表示每周二和周五1.2.5. 下個(gè)月開始每個(gè)月3號(hào)0點(diǎn)自動(dòng)關(guān)機(jī)
at 00:00 /next:3 shutdown /s /t 0 rem /next是相對(duì)于當(dāng)前的下一次2. schtasks
schtasks被微軟推薦用來代替at創(chuàng)建定時(shí)計(jì)劃任務(wù)。schtasks功能更加細(xì)化,更加強(qiáng)大。以下只描述主要功能,更多細(xì)節(jié)見微軟資料
2.1. schtasks /create
此命令主要負(fù)責(zé)創(chuàng)建新的計(jì)劃任務(wù)。
2.1.1 語法
schtasks/create/tnTaskName/trTaskRun/scschedule[/momodifier][/dday][/mmonth[,month...][/iIdleTime] [/stStartTime][/sdStartDate][/edEndDate][/scomputer[/u[domain\]user/ppassword]] [/ru{[Domain\]User|"System"} [/rpPassword]]/?參數(shù)
-
/tn TaskName
指定任務(wù)的名稱。 -
/tr TaskRun
指定任務(wù)運(yùn)行的程序或命令。鍵入可執(zhí)行文件、腳本文件或批處理文件的完全合格的路徑和文件名。如果忽略該路徑,SchTasks.exe 將假定文件在Systemroot\System32 目錄下。 -
/sc schedule
指定計(jì)劃類型。有效值為 MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY、ONCE、ONSTART、ONLOGON、ONIDLE。值說明 INUTE、HOURLY、DAILY、WEEKLY、MONTHLY 指定計(jì)劃的時(shí)間單位。 NCE 任務(wù)在指定的日期和時(shí)間運(yùn)行一次。 NSTART 任務(wù)在每次系統(tǒng)啟動(dòng)的時(shí)候運(yùn)行。可以指定啟動(dòng)的日期,或下一次系統(tǒng)啟動(dòng)的時(shí)候運(yùn)行任務(wù)。 ONLOGON 每當(dāng)用戶(任意用戶)登錄的時(shí)候,任務(wù)就運(yùn)行。可以指定日期,或在下次用戶登錄的時(shí)候運(yùn)行任務(wù)。 NIDLE 只要系統(tǒng)空閑了指定的時(shí)間,任務(wù)就運(yùn)行。可以指定日期,或在下次系統(tǒng)空閑的時(shí)候運(yùn)行任務(wù)。 -
/mo modifier
指定任務(wù)在其計(jì)劃類型內(nèi)的運(yùn)行頻率。這個(gè)參數(shù)對(duì)于 MONTHLY 計(jì)劃是必需的。對(duì)于 MINUTE、HOURLY、DAILY 或 WEEKLY 計(jì)劃,這個(gè)參數(shù)有效,但也可選。默認(rèn)值為 1。劃類型修飾符說明 MINUTE 1~1439 任務(wù)每n分鐘運(yùn)行一次。 OURLY 1~23 任務(wù)每n小時(shí)運(yùn)行一次。 AILY 1~365 任務(wù)每n天運(yùn)行一次。 WEEKLY 1~52 任務(wù)每n周運(yùn)行一次。 MONTHLY 1~12 任務(wù)每n月運(yùn)行一次。 null LASTDAY 任務(wù)在月份的最后一天運(yùn)行。 null FIRST、SECOND、THIRD、FOURTH、LAST 與/dday參數(shù)共同使用,并在特定的周和天運(yùn)行任務(wù)。例如,在月份的第三個(gè)周三 -
/d dirlist
指定周或月的一天。只與 WEEKLY 或 MONTHLY 計(jì)劃共同使用時(shí)有效。劃類型日期值 WEEKLY 可選項(xiàng)。有效值是 MON ~ SUN 和 * (每一天)。MON 是默認(rèn)值。 MONTHLY 在使用 FIRST、SECOND、THIRD、FOURTH 或 LAST 修飾符 (/mo) 時(shí),需要 MON ~ SUN 中的某個(gè)值。1 ~ 31 是可選的,只在沒有修飾符或修飾符為1 ~ 12類型時(shí)有效。默認(rèn)值是 1 (月份的第一天)。 -
/m month[,month…]
指定一年中的一個(gè)月。有效值是 JAN ~ DEC 和 * (每個(gè)月)。/m參數(shù)只對(duì)于 MONTHLY 計(jì)劃有效。在使用 LASTDAY 修飾符時(shí),這個(gè)參數(shù)是必需的。否則,它是可選的,默認(rèn)值是 * (每個(gè)月)。 -
/i InitialPageFileSize
指定任務(wù)啟動(dòng)之前計(jì)算機(jī)空閑多少分鐘。鍵入一個(gè)1 ~ 999之間的整數(shù)。這個(gè)參數(shù)只對(duì)于 ONIDLE 計(jì)劃有效,而且是必需的。 -
/st StartTime
以HH:MM:SS24 小時(shí)格式指定時(shí)間。默認(rèn)值是命令完成時(shí)的當(dāng)前本地時(shí)間。/st參數(shù)只對(duì)于 MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY 和 ONCE 計(jì)劃有效。它只對(duì)于 ONCE 計(jì)劃是必需的。 -
/sd StartDate
以MM/DD/YYYY格式指定任務(wù)啟動(dòng)的日期。默認(rèn)值是當(dāng)前日期。/sd參數(shù)對(duì)于所有的計(jì)劃有效,但只對(duì)于 ONCE 計(jì)劃是必需的。 -
/ed EndDate
指定任務(wù)計(jì)劃運(yùn)行的最后日期。此參數(shù)是可選的。它對(duì)于 ONCE、ONSTART、ONLOGON 或 ONIDLE 計(jì)劃無效。默認(rèn)情況下,計(jì)劃沒有結(jié)束日期。 -
/s Computer
指定遠(yuǎn)程計(jì)算機(jī)的名稱或 IP 地址(帶有或者沒有反斜杠)。默認(rèn)值是本地計(jì)算機(jī)。 -
/u [domain]user
使用特定用戶帳戶的權(quán)限運(yùn)行命令。默認(rèn)情況下,使用已登錄到運(yùn)行 SchTasks 的計(jì)算機(jī)上的用戶的權(quán)限運(yùn)行命令。 -
/p password
指定在/u參數(shù)中指定的用戶帳戶的密碼。如果使用/u參數(shù),則需要該參數(shù)。 -
/ru {[Domain]User|“System”}
使用指定用戶帳戶的權(quán)限運(yùn)行任務(wù)。默認(rèn)情況下,使用用戶登錄到運(yùn)行 SchTasks 的計(jì)算機(jī)上的權(quán)限運(yùn)行任務(wù)。
|值 |說明 |
| :–| :–|
|[domain}User? | 指定用戶帳戶。 |
| “System"或”" |指定操作系統(tǒng)使用的 NT Authority\System 帳戶。 | -
/p Password
指定用戶帳戶的密碼,該用戶帳戶在/u參數(shù)中指定。如果在指定用戶帳戶的時(shí)候忽略了這個(gè)參數(shù),SchTasks.exe 會(huì)提示您輸入密碼而且不顯示鍵入的文本。使用 NT Authority\System 帳戶權(quán)限運(yùn)行的任務(wù)不需要密碼,SchTasks.exe 也不會(huì)提示索要密碼。
2.1.2 示例
rem 每隔15分鐘創(chuàng)建文件夾 schtasks /create /sc minute /mo 15 /tn "realTime" /tr "cmd /c md f:\abc" rem 每個(gè)小時(shí)第5分鐘執(zhí)行批處理文件 schtasks /create /sc hourly /st 00:05:00 /tn "CustomBat" /tr c:\my.bat rem 從2019年5月的第一天起每五小時(shí)運(yùn)行一次 schtasks /create /sc hourly /mo 5 /sd 05/01/2019 /tn "My App" /tr c:\myapp.exe rem 每天的 8:00 A.M. 運(yùn)行一次,直到2019年12月31日結(jié)束。由于它忽略了/mo 參數(shù),所以使用默認(rèn)間隔 1 來每天運(yùn)行命令 schtasks /create /tn "My App" /tr c:\myapp.exe /sc daily /st 08:00:00 /ed 12/31/2019 rem 計(jì)劃任務(wù)每隔一周在周五運(yùn)行 schtasks /create /tn "My App" /tr c:\myapp.exe /sc weekly /mo 2 /d FRI rem 計(jì)劃任務(wù)在每月的第一天運(yùn)行 schtasks /create /tn "My App" /tr c:\myapp.exe /sc monthly rem 計(jì)劃任務(wù)在每月的最后一天運(yùn)行 rem 使用 /mo 參數(shù)指定在每月的最后一天運(yùn)行程序,使用通配符 (*) 與 /m 參數(shù)表明在每月的最后一天運(yùn)行程序 schtasks /create /tn "My App" /tr c:\myapp.exe /sc monthly /mo lastday /m * rem 計(jì)劃任務(wù)在每月的第二個(gè)周日運(yùn)行 schtasks /create /tn "My App" /tr c:\myapp.exe /sc monthly /mo SECOND /d SUN rem 計(jì)劃任務(wù)在五月和六月的第 15 天運(yùn)行 schtasks /create /tn "My App" /tr c:\myapp.exe /sc monthly /d 15 /m MAY,JUN /st 15:00:00 rem 計(jì)劃任務(wù)在每次系統(tǒng)啟動(dòng)的時(shí)候運(yùn)行 schtasks /create /tn "My App" /tr c:\myapp.exe /sc onstart /sd 03/15/2019 rem 計(jì)劃某項(xiàng)任務(wù)在計(jì)算機(jī)空閑的時(shí)候運(yùn)行,使用必需的 /i 參數(shù)指定在啟動(dòng)任務(wù)之前計(jì)算機(jī)必需持續(xù)空閑十分鐘 schtasks /create /tn "My App" /tr c:\myapp.exe /sc onidle /i 102.2. schtasks /change
更改一個(gè)或多個(gè)下列任務(wù)屬性。
- 任務(wù)運(yùn)行的程序 (/tr)。
- 任務(wù)運(yùn)行的用戶帳戶 (/ru)。
- 用戶帳戶的密碼 (/rp)。
2.2.1. 語法
schtasks /change /tn TaskName [/s computer [/u [domain\]user /p password]][/tr TaskRun] [/ru [Domain\]User | "System"] [/rp Password]參數(shù)
-
/tn TaskName
標(biāo)識(shí)要更改的任務(wù)。輸入任務(wù)名。 -
/s Computer
指定遠(yuǎn)程計(jì)算機(jī)的名稱或 IP 地址(帶有或者沒有反斜杠)。默認(rèn)值是本地計(jì)算機(jī)。 -
/u [domain]user
使用特定用戶帳戶的權(quán)限運(yùn)行命令。默認(rèn)情況下,使用已登錄到運(yùn)行 SchTasks 的計(jì)算機(jī)上的用戶的權(quán)限運(yùn)行命令。 -
/p password
指定在 /u 參數(shù)中指定的用戶帳戶的密碼。如果使用 /u 參數(shù),則需要該參數(shù)。 -
/tr TaskRun
更改任務(wù)運(yùn)行的程序。輸入可執(zhí)行文件、腳本文件或批處理文件的完全合格的路徑和文件名。如果忽略了路徑,SchTasks.exe 假定文件在 Systemroot\System32 目錄下指定的程序替換任務(wù)最初運(yùn)行的程序。 -
/ru [Domain]User | "System"
更改用于任務(wù)的用戶帳戶。
2.2.2 示例
rem 根據(jù)用戶名更改任務(wù)運(yùn)行的程序 schtasks /change /tn "Virus Check" /tr C:\VirusCheck2.exe rem 將程序更改為 System 帳戶 rem 更改SecurityScript 任務(wù)以使其以 NT Authority\System 帳戶權(quán)限運(yùn)行。它使用 /ru "" 參數(shù)來表示 System 帳戶。 schtasks /change /tn SecurityScript /ru ""2.3. schtasks /run
立即運(yùn)行計(jì)劃任務(wù)。
2.3.1 語法
schtasks /run /tn TaskName [/s computer [/u [domain\]user /p password]] /?參數(shù)
-
/tn TaskName
標(biāo)識(shí)任務(wù)。該參數(shù)是必需的。 -
/s Computer
指定遠(yuǎn)程計(jì)算機(jī)的名稱或 IP 地址(帶有或者沒有反斜杠)。默認(rèn)值是本地計(jì)算機(jī)。 -
/u [domain]user
使用特定用戶帳戶的權(quán)限運(yùn)行命令。默認(rèn)情況下,使用已登錄到運(yùn)行 SchTasks 的計(jì)算機(jī)上的用戶的權(quán)限運(yùn)行命令。 -
/p password
指定在 /u 參數(shù)中指定的用戶帳戶的密碼。如果使用 /u 參數(shù),則需要該參數(shù)。 -
/?
在命令提示符顯示幫助。
2.3.2 示例
rem 立即運(yùn)行指定任務(wù) schtasks /run /tn "Security Script" rem 在遠(yuǎn)程計(jì)算機(jī)上運(yùn)行任務(wù) schtasks /run /tn Update /s Svr012.4. schtasks /end
終止由任務(wù)啟動(dòng)的程序
2.4.1 語法
schtasks /end /tn TaskName [/s computer [/u [domain\]user /p password]] /?參數(shù)
-
/tn TaskName
標(biāo)識(shí)啟動(dòng)程序的任務(wù)。該參數(shù)是必需的。 -
/s Computer
指定遠(yuǎn)程計(jì)算機(jī)(帶有或者沒有反斜杠)的名稱或 IP 地址。默認(rèn)值是本地計(jì)算機(jī)。 -
/u [domain]user
使用特定用戶帳戶的權(quán)限運(yùn)行命令。默認(rèn)情況下,使用已登錄到運(yùn)行 SchTasks 的計(jì)算機(jī)上的用戶的權(quán)限運(yùn)行命令。 -
/p password
指定在 /u 參數(shù)中指定的用戶帳戶的密碼。如果使用 /u 參數(shù),則需要該參數(shù)。 -
/?
顯示幫助。
2.4.2 示例
rem 終止本地計(jì)算機(jī)上的任務(wù) schtasks /end /tn "My Notepad" rem 終止遠(yuǎn)程計(jì)算機(jī)上的任務(wù) schtasks /end /tn InternetOn /s Svr012.5. schtasks /delete
刪除計(jì)劃任務(wù)
2.5.1. 語法
schtasks /delete /tn {TaskName | *} [/f] [/s computer [/u [domain\]user /p password]] [/?]參數(shù)
-
*/tn {TaskName | }
標(biāo)識(shí)要?jiǎng)h除的任務(wù)。該參數(shù)是必需的。值說明 askName 刪除已命名任務(wù)。 * 刪除計(jì)算機(jī)上的所有計(jì)劃任務(wù)。 -
/f
阻止確認(rèn)消息。不警告就刪除任務(wù)。 -
/s Computer
指定遠(yuǎn)程計(jì)算機(jī)的名稱或 IP 地址(帶有或者沒有反斜杠)。默認(rèn)值是本地計(jì)算機(jī)。 -
/u [domain]user
使用特定用戶帳戶的權(quán)限運(yùn)行命令。默認(rèn)情況下,使用已登錄到運(yùn)行 SchTasks 的計(jì)算機(jī)上的用戶的權(quán)限運(yùn)行命令。 -
/p password
指定在 /u 參數(shù)中指定的用戶帳戶的密碼。如果使用 /u 參數(shù),則需要該參數(shù)。 -
/?
在命令提示符顯示幫助。
2.5.2. 示例
rem 從遠(yuǎn)程計(jì)算機(jī)上的計(jì)劃表中刪除任務(wù) schtasks /delete /tn "Start Mail" /s Svr16 rem 刪除所有為本地計(jì)算機(jī)計(jì)劃的任務(wù)。 schtasks /delete /tn * /f2.6. schtasks /query
查詢計(jì)劃任務(wù)
2.6.1. 語法
語法
schtasks [/query] [/fo {TABLE | LIST | CSV}] [/nh] [/v] [/s computer [/u [domain]user /p password]]
參數(shù)
-
/query
操作名稱可選。鍵入不帶任何參數(shù)的 schtasks 來執(zhí)行查詢。 -
/fo {TABLE|LIST|CSV}
指定輸出格式。TABLE 為默認(rèn)值。 -
/nh
忽略表格顯示中的列標(biāo)題。此參數(shù)與 TABLE 和 CSV 輸出格式共同使用時(shí)有效。 -
/v
將任務(wù)的高級(jí)屬性添加到顯示中。
使用 /v 的查詢應(yīng)該格式化成 LIST 或 CSV。 -
/s Computer
指定遠(yuǎn)程計(jì)算機(jī)的名稱或 IP 地址(帶有或者沒有反斜杠)。默認(rèn)值是本地計(jì)算機(jī)。 -
/u [domain]user
使用特定用戶帳戶的權(quán)限運(yùn)行命令。默認(rèn)情況下,使用已登錄到運(yùn)行 SchTasks 的計(jì)算機(jī)上的用戶的權(quán)限運(yùn)行命令。 -
/p password
指定在 /u 參數(shù)中指定的用戶帳戶的密碼。如果使用 /u 參數(shù),則需要該參數(shù)。 -
/?
在命令提示符顯示幫助。
2.6.2. 示例
rem 顯示本地計(jì)算機(jī)上的計(jì)劃任務(wù) schtasks schtasks /query rem 顯示計(jì)劃任務(wù)的高級(jí)屬性 schtasks /query /fo LIST /v rem 將為遠(yuǎn)程計(jì)算機(jī)計(jì)劃的任務(wù)記入日志 schtasks /query /s Reskit16 /fo csv /nh >> \\svr01\data\tasklogs\p0102.csv更多信息參考微軟
總結(jié)
以上是生活随笔為你收集整理的批处理之计划任务at和schtasks的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GJM :Sql 各种语句 以及函数 [
- 下一篇: LockSupport的park和unp