วิธีหนึ่งคือการเรียกใช้ผ่าน shellscript ด้วยsudo
สิทธิ์ (และให้รหัสผ่านเมื่อคุณเริ่ม shellscript) หาก shellscript อยู่ในไดเรกทอรีปัจจุบัน
sudo ./delayer 4h
โดยที่delayer
สามารถเป็น shellscript พร้อมเนื้อหา
#!/bin/bash
sleep "$1"
command
ทำให้สามารถเรียกใช้งานได้ด้วย
chmod +x delayer
และคัดลอกหรือย้ายไปยังไดเรกทอรีในPATH
ถ้าคุณต้องการ
หากคุณต้องการ shellscript ที่ยืดหยุ่นมากขึ้นซึ่งคุณสามารถเลือกคำสั่ง [บรรทัด] เพื่อหน่วงเวลาโดยการป้อนพารามิเตอร์คุณสามารถลอง
#!/bin/bash
if [ $# -lt 2 ] || [ "$(whoami)" != "root" ]
then
echo "Delay start of command, that needs 'sudo'
Usage: sudo $0 <delay> <command line>
Example: sudo $0 4h parted -ls"
exit
fi
sleep "$1"
shift
"$@"
ตัวอย่างการสาธิต (หน่วงเวลาสั้น ๆ 5 วินาทีสำหรับการสาธิต)
$ ./delayer
Delay start of command, that needs 'sudo'
Usage: sudo ./delayer <delay> <command line>
Example: sudo ./delayer 4h parted -ls
$ sudo ./delayer 5s parted /dev/sdc p
[sudo] password for sudodus:
Model: Kanguru SS3 (scsi)
Disk /dev/sdc: 15,9GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
2 1049kB 2097kB 1049kB primary bios_grub
3 2097kB 258MB 256MB fat32 primary boot, esp
4 258MB 2274MB 2016MB primary
5 2274MB 12,5GB 10,2GB ext2 primary
1 12,5GB 15,9GB 3394MB ntfs primary msftdata