Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม Bash

เชี่ยวชาญ Bash Sleep: หยุดนิ่งสคริปต์ N วินาที ด้วยคำสั่งง่ายๆ

เมื่อเขียน Shell Script บางครั้งคุณต้องการให้สคริปต์ "รอ" เป็นจำนวนวินาทีก่อนดำเนินการต่อ — เช่น รอให้ Process อื่นเสร็จสิ้น หรือรอ قبلลองใหม่หลังคำสั่งล้มเหลว

แก้ได้ง่ายๆ ด้วยคำสั่ง sleep

วิธีใช้คำสั่ง Bash Sleep

sleep เป็นคำสั่งที่ยืดหยุ่นและเรียบง่าย ไวยากรณ์: sleep N — หยุดนิ่งเป็นเวลา N วินาที โดย N เป็นจำนวนเต็มบวก หรือทศนิยมก็ได้

ตัวอย่างพื้นฐาน

echo "Hello there!"
sleep 2
echo "Oops! I fell asleep for a couple seconds!"

ผลลัพธ์: ข้อความแรกแสดง → หยุด 2 วินาที → ข้อความที่สองแสดง

ใช้ทศนิยมได้: sleep .8 หยุด 0.8 วินาที (800 มิลลิวินาที)

ข้อควรระวังเมื่อใช้ Sleep

หน่วยเวลาค่าเริ่มต้นคือวินาที — ไม่ต้องระบุหน่วย

บนบางระบบ (BSD, macOS) รองรับ เฉพาะวินาที เท่านั้น แต่ Unix-like อื่นๆ รองรับหน่วยเพิ่มเติม:

  • s — วินาที (Default)
  • m — นาที
  • h — ชั่วโมง
  • d — วัน

ใช้หลายอาร์กิวเมนต์ได้ — ระบบจะรวมเวลาทั้งหมด:

sleep 2m 30s   # หยุด 2 นาที 30 วินาที = 150 วินาที

บน macOS/BSD ให้ใช้ sleep 150 แทน

สรุป

คำสั่ง sleep เป็นเครื่องมือง่ายแต่ทรงพลัง สำหรับเพิ่มการหน่วงเวลา (Pause) ใน Bash Script ใช้ร่วมกับคำสั่งอื่นได้หลากหลาย เช่น:

  • สร้างนาฬิกาปลุกแบบง่าย
  • ควบคุมลำดับการทำงานให้ถูกต้อง
  • เว้นช่วงระหว่างการพยายามเชื่อมต่อเว็บไซต์ (Retry backoff)

ใส่ sleep ลงในชุดเครื่องมือ Bash ของคุณ และเขียนโค้ดต่อไปครับ!