ทำงานทุก ๆ x นาทีด้วย Windows Task Scheduler [ปิด]


297

ฉันกำลังพยายามให้ Windows Task Scheduler รัน. exe โดยเฉพาะทุก ๆ 10 นาที แต่ตัวเลือกนั้นอนุญาตให้ทำการประมวลผลวันละครั้งเท่านั้น

มีวิธีที่ฉันสามารถใช้เพื่อเรียกใช้. exe ทุก ๆ 10 หรือ 20 นาทีหรือไม่


6
ไม่ได้ใช้งานง่ายเหมือนใน windows server 2008 คุณสามารถพิมพ์ตัวเลขลงในกล่องดรอปดาวน์ "ทำซ้ำทุก ๆ " ในกล่องโต้ตอบ "แก้ไขทริกเกอร์" ฉันได้ทิ้งลิงค์ไว้ในข้อความของ MorningZ ด้านล่าง
David Yates

4
Google ให้หลาย คำตอบรวมทั้งจากไมโครซอฟท์นี้
Phrogz

คำตอบ:


395

งานจะต้องกำหนดค่าในสองขั้นตอน

ก่อนอื่นให้คุณสร้างงานง่าย ๆ ที่เริ่มต้นที่ 0:00 ทุกวัน จากนั้นคุณจะเข้าAdvanced...(หรือคล้ายกันขึ้นอยู่กับระบบปฏิบัติการที่คุณใช้อยู่) และเลือกRepeat every X minutesตัวเลือกเป็นเวลา 24 ชั่วโมง

กุญแจสำคัญในที่นี้คือการค้นหาคุณสมบัติขั้นสูง หากคุณใช้ตัวช่วยสร้าง XP จะให้คุณเปิดใช้งานกล่องโต้ตอบขั้นสูงเมื่อคุณสร้างงานเท่านั้น

ใน Windows รุ่นล่าสุด (ฉันคิดว่า 7+):

  1. ดับเบิลคลิกที่งานและหน้าต่างคุณสมบัติจะปรากฏขึ้น
  2. คลิกที่Triggersแท็บ
  3. ดับเบิลคลิกที่รายละเอียดทริกเกอร์จากนั้นหน้าต่างแก้ไขทริกเกอร์จะปรากฏขึ้น
  4. ใต้Advanced settingsแผงควบคุมทำเครื่องหมายRepeat task everyxxx นาทีและตั้งค่าIndefinitelyหากคุณต้องการ
  5. สุดท้ายคลิกตกลง

39
ปัญหาเกี่ยวกับวิธีแก้ปัญหานี้คือถ้าคุณรีบูทที่ 0:05 ภารกิจจะไม่เริ่มทำซ้ำจนกระทั่ง 23:55 ในภายหลัง!
JoshuaDavid

7
ความแตกต่างเล็กน้อยคือการตั้งค่า 24 งานแต่ละงานทำซ้ำเป็นเวลา 1 ชั่วโมง จากนั้นคุณจะไม่สูญเสียความคุ้มครองมากกว่าหนึ่งชั่วโมง
Yablargo

101
@FireCoding ไม่ได้ถ้าคุณได้ตั้งค่าให้ทำงานทันทีที่พลาดการเริ่มต้นตามกำหนดการ ภายใต้งาน> คุณสมบัติ> การตั้งค่า> ตรวจสอบRun task as soon as possible after a scheduled start is missed
Urda

4
@Urda: สมมติว่าคุณตั้งค่าให้เริ่มต้นที่ 0:00 และทำซ้ำทุกชั่วโมง หากคุณเปิดคอมพิวเตอร์ที่ 06:00 และตัวเลือกRun task as soon as possible after...เปิดอยู่คอมพิวเตอร์จะเรียกใช้คำสั่งอินสแตนซ์หนึ่งหรือหกตัวหรือไม่
Andreas Rejbrand

7
@AndreasRejbrand If this setting is checked, the Task Scheduler service will start the task if the task was scheduled to run at a certain time, but for some reason (for example, the computer was turned off or the Task Scheduler service was busy) the task was not activated. The Task Scheduler service will not start the task immediately after the task was missed. By default the service waits ten minutes before starting the missed task.ดังนั้นมันควรเริ่ม 1 อินสแตนซ์ของงานไม่ใช่งานที่ค้างทั้งหมด
Urda

44

หลังจากที่คุณเลือกตัวเลือกการทำซ้ำขั้นต่ำ (5 นาทีหรือ 10 นาที) คุณสามารถเน้นจำนวนและเขียนหมายเลขใดก็ได้ที่คุณต้องการ


นี่คือสิ่งที่ทำงานบน Server 2012 เนื่องจากไม่มีตัวเลือก 'ขั้นสูง' กุญแจสำคัญในแพลตฟอร์มเหล่านี้คือการตระหนักว่าคุณสามารถระบุสิ่งที่คุณต้องการในกล่อง
ตัดสินใจ

8
ไกล ... 0 จาก 10 สำหรับการค้นพบในการออกแบบ UI Microsoft!
ดาเมียนซอว์เยอร์

เป็นการดีที่จะรู้ดีมากที่จะรู้ :) แต่ไม่มีความเป็นไปได้อีกต่อไปที่จะลงไปเป็นวินาทีใช่ไหม? 1 นาทีเป็นอย่างน้อย? ฉันต้องการไปที่ 30 หรือ 10 วินาที ...
BAERUS

1
นี่คือความคิดเห็นไม่ใช่คำตอบ
Leo Natan

3
@LeoNatan จริงนี้เป็นคำตอบที่แน่นอนผมกำลังมองหาเมื่อฉันเดินเข้าไปในโพสต์นี้ :-)
Jony adamit

33

คุณยังสามารถสร้างไฟล์แบตช์ดังต่อไปนี้หากคุณต้องการรายละเอียดปลีกย่อยระหว่างการโทร:

:loop
CallYour.Exe
timeout /t timeToWaitBetweenCallsInSeconds /nobreak
goto :loop

3
ในกรณีของฉันซึ่งเป็นโซลูชันที่หรูหราที่สุดเนื่องจากงานที่เป็นปัญหาเริ่มต้นจากแบตช์ไฟล์แล้ว ดังนั้นมันเป็นเพียงเรื่องของการเพิ่มสองสามบรรทัด ขอบคุณ!
marlar

1
ฉันชอบวิธีนี้ แต่คุณจะมั่นใจได้อย่างไรว่าไฟล์ชุดนี้ทำงานอยู่ตลอดเวลา (และมีเพียงหนึ่งอินสแตนซ์เท่านั้น)
Olivier 'Ölbaum' Scherler

นี่เป็นวิธีที่ทำได้ใช่ แต่ตัวกำหนดเวลางานเป็นวิธีที่จะทำ เพียงใช้ตัวเลือก "หลังจากเริ่มต้น" แทนวันที่ที่ระบุและคุณจะได้รับความคุ้มครอง
Jakob Sternberg

ฉันมีปัญหาในการกำหนดค่างานให้ทำงานทุกชั่วโมง ดังนั้นฉันชอบวิธีนี้ในการวนซ้ำมันและปล่อยให้มันหลับเป็นเวลา 1 ชั่วโมงและวนงาน เพียงแค่ต้องคิดออกว่าเวลาทำงานกับงานประจำวันได้อย่างไรและงานประจำชั่วโมงทำให้เกิดปัญหาทุก ๆ 24 ชั่วโมงหรือไม่
อาทิตย์

23

ใน "ทำซ้ำทุก ๆ :" เพียงแค่พิมพ์ 2 นาทีแทนที่จะเลือกจากรายการแบบเลื่อนลง


2
ขอบคุณ นี่คือสิ่งที่ฉันกำลังมองหา เวลาขั้นต่ำที่อนุญาตใน Win 2008 R2 คือ 1 นาที
Timothy C. Quinn

19

ใน XP ฉันคลิกAdvancedปุ่มบนScheduleแท็บ Repeat taskมีช่องทำเครื่องหมายสำหรับเป็น ค่าเริ่มต้นคือทุก ๆ 10 นาที

นอกจากนี้คุณยังสามารถสร้างงานที่กำหนดผ่านทางบรรทัดคำสั่ง ฉันไม่ได้ลองด้วยตัวเอง แต่ดูเหมือนว่าคุณต้องการบางสิ่งบางอย่างในแนว (ไม่ผ่านการทดสอบ):

schtasks /create /tn "Some task name" /tr "app.exe" /sc HOURLY 

ฉันสับสนเกี่ยวกับตัวเลือกจนกระทั่ง ฉันตั้งให้ทำซ้ำทุก ๆ 5 นาทีให้พูดแล้วฉันถูกบังคับให้เลือกปุ่มตัวเลือกภายใต้ที่ ... ฉันจะป้อนอะไรถ้าฉันต้องการให้ Ti ทำงานทุก ๆ 5 นาทีทุกวันและไม่หยุด
kacalapy

ตกลงคุณพูดถูก นั่นคือความสับสน เห็นได้ชัดว่าคุณสามารถสร้างหนึ่งผ่านบรรทัดคำสั่ง อาจจะคุ้มค่ากับการยิง ฉันได้อัปเดตโพสต์ด้วยลิงก์ที่ฉันพบ
Courtney Christensen

19

ตัวอย่างงานรายชั่วโมง

ในขณะที่ทำตามคำแนะนำด้านบนด้วย schtasks คุณสามารถเห็นใน UI สิ่งที่ต้องทำเพื่อทำงานประจำชั่วโมง เมื่อคุณแก้ไขทริกเกอร์เริ่มงานตามกำหนดเวลา One Time (นี่คือกุญแจ) จากนั้นคุณสามารถเลือก "ทำซ้ำทุก ๆ :" 1 ชั่วโมงหรือทุกอย่างที่คุณต้องการ ดูภาพหน้าจอ:


1
และใช้งานSCHTASKS /Createอย่างไร
Kiquenet

8

ในการกำหนดเวลาการอัปเดตให้เป็นอัตโนมัติคุณควร:

  • ไปที่แผงควบคุม»เครื่องมือการดูแลระบบ»งานที่กำหนดเวลาไว้
  • สร้างงาน (พื้นฐาน)
  • ไปที่ตารางเวลา»ขั้นสูง
  • ทำเครื่องหมายที่ช่องสำหรับ "ทำซ้ำงาน" ทุก 10 นาทีโดยมีระยะเวลาเช่น 24 ชั่วโมงหรือไม่สิ้นสุด
  • ไม่ได้เลือกวันที่ออกจากตำแหน่ง

หากคุณไม่พบการตั้งค่ากำหนดการให้ดูที่: คุณสมบัติแก้ไขทริกเกอร์


3

ลิงค์ที่ให้ไว้บางส่วนเป็นเพียงการตั้งค่าสำหรับ "งานที่จัดตารางเวลา" ของ Windows 2003

ใน Windows Server 2008 การตั้งค่า "งาน" มีเฉพาะกล่องที่มีตัวเลือกสำหรับ "5 นาที 10 นาที 15 นาที 30 นาทีและ 1 ชั่วโมง" (ภาพหน้าจอ: http://i46.tinypic.com/2gwx7r8.jpg ) ... ที่ซึ่ง Window 2003 เป็นกล่องข้อความ "ป้อนหมายเลขที่คุณต้องการ"

ฉันคิดว่าการ "ส่งออก" และแก้ไข XML จาก: PT30M เป็น PT2M

และการนำเข้าที่เป็นงานใหม่จะ "หลอกลวง" งานซ้ำทุก 2 นาที แต่มันไม่ชอบ

วิธีแก้ปัญหาของฉันสำหรับการเรียกใช้งานทุก ๆ 2 นาทีใน Windows 2008 คือการตั้งค่า "ทริกเกอร์" ที่แตกต่างกัน 30 ครั้งสำหรับงานของฉันที่ทำซ้ำทุกชั่วโมง แต่จ้องที่: 00,: 02,: 04,: 06 และอื่น ๆ บน .... ใช้เวลาในการติดตั้ง 8-10 นาที แต่ฉันต้องทำเพียงครั้งเดียว :-)


12
คุณสามารถพิมพ์ตัวเลขลงในดรอปดาวน์ของ Windows Server 2008 ได้ที่social.technet.microsoft.com/Forums/en-US/winserverManagement/…
David Yates
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.