Skip to main content

วิธีการใช้คำสั่ง "นอนหลับ" Linux เพื่อหยุดการทำงานของสคริปต์ BASH

วิธีการใช้คำสั่ง Stop Order ในโปรแกรม Streaming : เรียนรู้ TFEX ไม่ยาก ตอนที่ 7 (เมษายน 2025)

วิธีการใช้คำสั่ง Stop Order ในโปรแกรม Streaming : เรียนรู้ TFEX ไม่ยาก ตอนที่ 7 (เมษายน 2025)
Anonim

คู่มือนี้แสดงวิธีการใช้คำสั่ง Linux sleep เพื่อหยุดการทำงานของสคริปต์ bash

คำสั่ง sleep จะไม่มีประโยชน์หากคุณต้องการปิดหน้าต่างเทอร์มินัลของคุณ แต่เป็นส่วนหนึ่งของสคริปต์สามารถใช้งานได้หลายวิธีรวมทั้งเป็นปัจจัยหยุดชั่วคราวก่อนลองคำสั่งอีกครั้ง

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

สคริปต์สำหรับคัดลอกไฟล์อาจประกอบด้วยลูปเพื่อทดสอบว่าไฟล์ทั้งหมดถูกดาวน์โหลดหรือไม่ (เช่นทราบว่าควรมีไฟล์ 50 ไฟล์และเมื่อพบไฟล์ 50 ไฟล์กระบวนการคัดลอกจะเริ่มต้นขึ้น)

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

วิธีการใช้คำสั่ง Sleep

เมื่อต้องการใช้คำสั่งการนอนหลับ Linux ให้ป้อนข้อมูลต่อไปนี้ลงในหน้าต่างเทอร์มินัล:

นอนหลับ 5 วินาที

คำสั่งดังกล่าวจะทำให้สถานีของคุณหยุดชั่วคราวเป็นเวลา 5 วินาทีก่อนกลับไปที่บรรทัดคำสั่ง

คำสั่ง sleep ต้องใช้คำหลัก 'sleep' ตามด้วยหมายเลขที่คุณต้องการหยุดชั่วคราวและหน่วยวัด

คุณสามารถระบุความล่าช้าเป็นวินาทีนาทีเวลาหรือวัน

  • s - วินาที
  • m - นาที
  • ชั่วโมง -
  • d วัน

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

หมายเลขสำหรับคำสั่ง sleep ไม่จำเป็นต้องเป็นจำนวนเต็ม นอกจากนี้คุณยังสามารถใช้ตัวเลขทศนิยมได้

ตัวอย่างเช่นคุณสามารถใช้ไวยากรณ์ต่อไปนี้ได้อย่างสมบูรณ์แบบ:

นอนหลับได้ 3.5 วินาที

ตัวอย่างการใช้คำสั่ง Sleep

สคริปต์ต่อไปนี้แสดงวิธีการใช้คำสั่ง sleep เพื่อสร้างนาฬิกานับถอยหลังจากเทอร์มินัล:

#! / bin / ทุบตีx = 10ในขณะที่ $ x-gt 0ทำนอนหลับ 1 วินาทีชัดเจนecho "$ x วินาทีจนกระทั่งระเบิด"x = $ (($ x - 1))เสร็จแล้ว

สคริปต์จะกำหนดตัวแปร x ถึง 10 ลูปขณะจะยังคงทำซ้ำในขณะที่ค่าของ x มากกว่าศูนย์

คำสั่ง sleep จะหยุดการทำงานของสคริปต์เป็นเวลา 1 วินาทีในแต่ละรอบของลูป

ส่วนที่เหลือของสคริปต์จะล้างหน้าจอแต่ละรอบโดยจะแสดงข้อความว่า "x วินาทีจนกว่าจะมีการระเบิด" (เช่น 10) แล้วลบ 1 ออกจากค่าของ x

หากไม่มีคำสั่ง sleep สคริปต์จะซูมเข้าและข้อความจะแสดงเร็วเกินไป

สวิทช์

คำสั่ง sleep มีเพียงสวิทช์เท่านั้น

สวิตช์ - help แสดงไฟล์ความช่วยเหลือสำหรับคำสั่ง sleep คุณสามารถบรรลุสิ่งเดียวกันโดยใช้คำสั่ง man ดังนี้:

นอนหลับมนุษย์

คำสั่ง - version แสดงให้เห็นเวอร์ชันของคำสั่ง sleep ที่ติดตั้งไว้ในระบบของคุณ

ข้อมูลที่ส่งกลับโดยสวิตช์ --version มีดังนี้:

  • หมายเลขเวอร์ชัน
  • รายละเอียดเกี่ยวกับลิขสิทธิ์
  • การอนุญาต
  • ผู้เขียน