Computer >> คอมพิวเตอร์ >  >> ระบบ >> Linux

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

ครั้งแรกที่ฉันจัดการเซิร์ฟเวอร์ที่มีงานยุ่ง ฉันต้องรอเวลาที่เหมาะสมเพื่อรีบูตเครื่องเมื่อมีคนไม่ได้ใช้งาน ฉันสังเกตว่าสิ่งนี้เกิดขึ้นประมาณตี 3 จากนั้น ฉันคิดกับตัวเองว่า “ไม่สะดวก ฉันต้องตื่นนอนในเวลาที่ไม่สมควรเพื่อรีบูตเซิร์ฟเวอร์ของฉัน” ห้าวินาทีต่อมาฉันก็รู้ว่านั่นเป็นความคิดที่โง่เขลา “นี่คือ Linux ฉันแน่ใจว่ามันง่ายที่จะทำให้งานง่ายๆ แบบนี้เป็นอัตโนมัติ” ดังนั้น at ถูกค้นพบ

ยูทิลิตี้นี้ใช้งานง่ายมาก คุณเพียงแค่ส่งเวลาและวันที่เป็นพารามิเตอร์บรรทัดคำสั่ง จากนั้นป้อนคำสั่งอย่างน้อยหนึ่งคำสั่งที่คุณต้องการให้ดำเนินการ

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

วิธีการติดตั้ง “at” บนลีนุกซ์รุ่นต่างๆ

บน Debian หรือการแจกแจงตาม Debian ให้เรียกใช้:

sudo apt install at

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

บน Fedora ให้เรียกใช้:

sudo dnf install at

วิธีติดตั้ง “at” บน Arch Linux:

sudo pacman -S at

และใน openSUSE:

sudo zypper install at

เปิดใช้งานการเริ่มต้นอัตโนมัติของ “at” Daemon และเรียกใช้บริการ

การแจกแจงบางส่วนจะเปิดใช้งานการเริ่มต้นของ "at" daemon โดยอัตโนมัติเมื่อบูต คนอื่นจะไม่ ตรวจสอบกับ:

systemctl is-enabled atd.service

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

หากมีข้อความว่า “ปิดการใช้งาน” ให้เปิดใช้งานด้วย:

sudo systemctl enable atd.service

และเริ่มภูต:

sudo systemctl start atd.service

วิธีระบุวันที่และเวลาเพื่อกำหนดเวลาคำสั่ง "at"

คุณสามารถใช้รูปแบบใดก็ได้ต่อไปนี้

1. รันคำสั่งหลังจากจำนวนนาที ชั่วโมง วัน หรือสัปดาห์ที่กำหนด

at now + 10 minutes
at now + 10 hours
at now + 10 days
at now + 10 weeks

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

2. วิ่งตรงเวลา:

at 23:10

หากเป็นเวลา 12:00 น. และคุณเรียกใช้:

at 11:00

จากนั้นคำสั่งจะทำงานในวันพรุ่งนี้ตามเวลาที่กำหนด

3. เรียกใช้ในเวลาและวันที่ที่แน่นอน:

at 12:00 December 31

ดูวิธีอื่นในการระบุเวลาและวันที่ได้ในคู่มือ “at” ออนไลน์

วิธีใช้คำสั่ง “at”

ดังที่คุณอาจสังเกตเห็น หลังจากที่คุณระบุเวลาที่กำหนดไว้แล้ว ระบบจะพาคุณไปที่ข้อความแจ้งที่ดูเหมือนรูปภาพต่อไปนี้:

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

ที่นี่ คุณเพียงแค่ป้อนคำสั่งที่คุณต้องการเรียกใช้ สิ่งเหล่านี้จะดำเนินการภายใต้ชื่อผู้ใช้ปัจจุบันของคุณ พิมพ์คำสั่งที่คุณต้องการเรียกใช้ในเวลาที่กำหนดแล้วกด Enter หากคุณต้องการรันคำสั่งที่ตามมา ให้ทำซ้ำขั้นตอนเดิม เมื่อเสร็จแล้ว ให้กด Ctrl + D . <EOT> จะปรากฏขึ้นเมื่อคุณกดปุ่มเหล่านั้น ตามด้วยเวลาที่คำสั่งจะถูกดำเนินการ

หากคุณต้องการเรียกใช้คำสั่งที่ต้องใช้สิทธิ์ของรูท อย่าใช้ sudo . โปรดจำไว้ว่า คำสั่งจะทำงานแบบอัตโนมัติ ดังนั้น sudo จะไม่ทำงานเพราะไม่มีใครสามารถป้อนรหัสผ่านได้ ให้เข้าสู่ระบบในฐานะผู้ใช้รูทก่อน:

sudo -i

แล้วใช้คำสั่ง "at" ตามปกติ ตอนนี้ คำสั่งทั้งหมดจะถูกดำเนินการในฐานะรูท แทนที่จะเป็นผู้ใช้ปกติของคุณ

หลังจากที่คุณกำหนดเวลาคำสั่งแล้ว ให้พิมพ์:

exit

การดำเนินการนี้จะทำให้คุณออกจากระบบบัญชีผู้ใช้รูท

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

ในตัวอย่างที่นำเสนอในภาพหน้าจอนี้ การปิดระบบมีกำหนดภายในสองนาที คุณสามารถปรับเปลี่ยนเพื่อวัตถุประสงค์ของคุณเองได้

หากปิดเครื่องคอมพิวเตอร์ก่อนที่งานที่กำหนดเวลาไว้จะมีโอกาสทำงาน คอมพิวเตอร์จะทำงานเมื่อเปิดเครื่องครั้งถัดไป (หากเวลาผ่านไป) ตัวอย่างเช่น หากคุณกำหนดเวลางานเวลา 15.00 น. ปิดทำการเวลา 14.00 น. และเปิดเครื่องเวลา 16.00 น. งานจะทำงานเวลา 16.00 น.

ดูและ/หรือลบงานที่กำหนดเวลาไว้

คุณสามารถดูงานที่อยู่ในคิวด้วย:

atq

หรือ

at -l

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

หากต้องการดูคำสั่งที่กำหนดไว้ในงาน ให้ใช้หมายเลขนำหน้าของงานนั้น

at -c 22

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

เอาต์พุตบรรทัดสุดท้ายจะแสดงคำสั่งที่คุณกำหนดเวลาไว้

หากต้องการลบงาน ให้ใช้หมายเลขนำหน้าดังนี้:

atrm 22

กำหนดเวลา “at” เพื่อเรียกใช้แอปพลิเคชันกราฟิก

ขั้นแรก ให้หาค่าตัวแปรการแสดงผลปัจจุบันของคุณ:

echo $DISPLAY

ปกติจะเป็น :0 .

กำหนดการ at วิ่ง. ในพรอมต์ “at” ให้ตั้งค่า DISPLAY ตัวแปรเป็นค่าก่อนหน้า (export DISPLAY=:0 ) และเรียกใช้แอปพลิเคชันกราฟิกที่คุณต้องการ

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

คำสั่งที่ใช้ในภาพหน้าจอก่อนหน้าจะส่งผลให้เกิดสิ่งต่อไปนี้

วิธีกำหนดเวลาคำสั่งใน Linux ด้วยยูทิลิตี้ “at”

ตอนนี้แอปกราฟิกจะ "อยู่ต่อหน้าคุณ" และเตือนคุณถึงงานสำคัญได้ดีกว่าการเตือนทางโทรศัพท์

บทสรุป

การใช้ “at” เป็นเรื่องง่าย ส่วนที่ยากกว่าคือการหาวิธีสร้างสรรค์ในการดำเนินการที่คุณต้องการ แต่คุณสามารถทำทุกอย่างที่ต้องการได้ เช่น เริ่มดาวน์โหลด ปิดโปรแกรม ทำให้คอมพิวเตอร์อยู่ในโหมดสแตนด์บาย และอื่นๆ