คำสั่งสลีปใน Linux

Sleep Command Linux



คำสั่งสลีปใช้เพื่อหน่วงเวลาตามระยะเวลาที่กำหนดระหว่างการดำเนินการของสคริปต์ใดๆ เมื่อ coder ต้องการหยุดการทำงานของคำสั่งใด ๆ เพื่อวัตถุประสงค์เฉพาะ คำสั่งนี้จะถูกใช้กับค่าเวลาเฉพาะ คุณสามารถกำหนดจำนวนการหน่วงเวลาโดย วินาที (s), นาที (m), ชั่วโมง (h) และวัน (d) บทช่วยสอนนี้จะช่วยให้คุณเรียนรู้การใช้คำสั่ง sleep โดยใช้สคริปต์ทุบตีที่แตกต่างกัน

ไวยากรณ์คำสั่งสลีป:

จำนวนการนอนหลับ[ต่อท้าย]







คุณสามารถใช้จำนวนเต็มหรือเศษส่วนเป็นค่าเวลาได้ ส่วนต่อท้ายเป็นทางเลือกสำหรับคำสั่งนี้ หากคุณไม่ใส่คำต่อท้าย ค่าเวลาจะถูกคำนวณเป็นวินาทีโดยค่าเริ่มต้น คุณสามารถใช้ได้ NS, m, h และ NS เป็นค่าต่อท้าย ตัวอย่างต่อไปนี้แสดงการใช้คำสั่ง sleep ที่มีส่วนต่อท้ายต่างกัน



ตัวอย่างที่ 1: คำสั่ง sleep โดยไม่มีคำต่อท้าย

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



#!/bin/bash

โยนออก 'รอ 2 วินาที...'
นอน 2
โยนออก 'งานเสร็จสมบูรณ์'

เรียกใช้ไฟล์ทุบตีด้วย เวลา คำสั่งแสดงค่าเวลาสามประเภทในการรันสคริปต์ ผลลัพธ์แสดงเวลาที่ใช้โดยระบบ ผู้ใช้ และเวลาจริง





$เวลา ทุบตีsleep1.sh

เอาท์พุท:



ตัวอย่างที่ 2: คำสั่ง sleep พร้อมคำต่อท้ายนาที

ในสคริปต์ต่อไปนี้ ' NS ' ใช้เป็นคำต่อท้ายด้วยคำสั่ง sleep ที่นี่ ค่าเวลาคือ 0.05 นาที หลังจากรอ 0.05 นาที เสร็จสิ้นภารกิจ ข้อความจะถูกพิมพ์

#!/bin/bash

โยนออก 'รอ 0.05 นาที...'
นอน0.05m
โยนออก 'งานเสร็จสมบูรณ์'

เรียกใช้สคริปต์ด้วย เวลา คำสั่งเหมือนตัวอย่างแรก

$เวลา ทุบตีsleep2.sh

เอาท์พุท:

ตัวอย่างที่ 3: คำสั่ง sleep พร้อมคำต่อท้ายชั่วโมง

ในสคริปต์ต่อไปนี้ ' ชม ' ใช้เป็นคำต่อท้ายด้วยคำสั่ง sleep ที่นี่ ค่าเวลาคือ 0.003 ชั่วโมง หลังจากรอ 0.003 ชั่วโมง เสร็จสิ้นภารกิจ ควรพิมพ์บนหน้าจอแต่ต้องใช้เวลามากกว่าความเป็นจริงเมื่อ 'ชม' ใช้คำต่อท้าย

#!/bin/bash

โยนออก 'รอ 0.003 ชั่วโมง...'
นอน0.003 ชม
โยนออก 'งานเสร็จสมบูรณ์'

$เวลา ทุบตีsleep3.sh

เอาท์พุท:

ตัวอย่างที่ 4: คำสั่ง sleep พร้อม loop

คุณสามารถใช้คำสั่ง sleep เพื่อวัตถุประสงค์ต่างๆ ในตัวอย่างต่อไปนี้ คำสั่ง sleep ใช้กับ while loop เริ่มแรก ค่าของตัวแปร NS ถูกกำหนดเป็น 1 และค่าของ NS จะเพิ่มขึ้นโดย 1 สำหรับ 4 ครั้งในทุก ๆ 2 ช่วงเวลาวินาที ดังนั้น เมื่อใดที่คุณจะเรียกใช้สคริปต์ แต่ละเอาต์พุตจะปรากฏขึ้นหลังจากรอ 2 วินาที

#!/bin/bash
NS=1
ในขณะที่ [ $n -lt 5 ]
ทำ
โยนออก 'ค่าของ n คือตอนนี้$n'
นอน2s
โยนออก ''
((NS=$n+1))
เสร็จแล้ว

เอาท์พุท:

ตัวอย่างที่ 5: คำสั่ง sleep ในเทอร์มินัลด้วยคำสั่งอื่น

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

$ลส && นอน 2 && pwd

เอาท์พุท:

ตัวอย่างที่ 6: การใช้คำสั่ง sleep จาก command prompt

คำสั่ง sleep ใช้ระหว่างคำสั่ง echo สองคำสั่งในตัวอย่างต่อไปนี้ ค่าเวลาสามค่าจะแสดงขึ้นหลังจากดำเนินการคำสั่ง

$เวลา (โยนออก 'เริ่ม';นอน 5;โยนออก 'จบ')

เอาท์พุท:

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