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

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

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

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

ขั้นตอนการ ดาวน์โหลด จะดำเนินการโดยสคริปต์แยกต่างหาก

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

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

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

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

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

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

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

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

เมื่อถึงเวลารอคอยวันที่จะเกิดอะไรขึ้นอาจเป็นเรื่องที่ควรพิจารณาใช้งาน 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) แล้วลบออกจากค่า x

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

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

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

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

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

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