Membuat Timer atau Delay Eksekusi di Bash
Yo, wassup, squad! 👋
Kali ini kita bakal ngomongin gimana cara bikin timer atau delay di Bash. Ini bisa berguna banget kalau kamu pengen ngepause script kamu sebelum ngejalanin perintah selanjutnya. Misalnya, mau ngecek koneksi internet tiap 5 detik atau mau nunggu proses selesai sebelum lanjut ke tugas berikutnya. Yuk simak caranya!
1. Cara Sederhana Pake sleep
Pertama, yang paling gampang, kita bisa pake command sleep
. Command ini bakal ngepause script selama waktu yang kita tentuin.
Contoh gampangnya, nih:
echo "Mulai $(date +"%T")"
sleep 5
echo "Selesai $(date +"%T")"
Kode di atas bakal ngeprint waktu mulai, terus ngepause selama 5 detik, trus ngeprint waktu selesai. Coba jalanin, bakal keliatan kalo ada jeda 5 detik antara dua echo.
2. Ngejalanin Perintah Berkala Pake while
Loop
Nah, kalau kamu pengen ngejalanin perintah secara berkala, misalnya setiap 5 detik, bisa pake kombinasi while
dan sleep
. Misalnya, nih:
while true; do
echo "Ngulang lagi - $(date +"%T")"
sleep 5
done
Script di atas bakal ngeprint waktu setiap 5 detik terus-terusan. Buat memberhentiin, tinggal tekan Ctrl + C
.
3. Ngebuat Countdown Timer
Kalau mau bikin countdown atau timer mundur? Gampang! Kita bisa pake for
loop. Contohnya:
for i in {5..1}; do
echo "$i..."
sleep 1
done
echo "Waktunya habis!"
Script ini bakal ngeprint angka dari 5 mundur sampe 1, tiap angka ada jeda 1 detik. Terakhir, ngeprint “Waktunya habis!”.
4. Pake at
Buat Menjadwal Eksekusi
Kalau kamu pengen ngejalanin perintah di waktu spesifik, bisa pake at
. Tapi at
biasanya harus diinstall dulu, tergantung sama OS-nya. Install dulu dengan:
- Debian/Ubuntu:
sudo apt install at
- Fedora:
sudo dnf install at
Terus, buat ngejadwalin perintah, tinggal ketik:
echo "echo 'Waktunya bangun!'" | at now + 5 minutes
Ini bakal ngeprint “Waktunya bangun!” setelah 5 menit dari sekarang.
5. Kombinasi read
buat Nunggu Input atau Delay
Kalau kamu pengen ngepause script sampe user ngeklik Enter
, kamu bisa pake read
. Tapi, kalau mau ngepause untuk waktu tertentu, bisa dikombinasiin dengan -t
. Contoh:
echo "Tekan Enter dalam 5 detik..."
if read -t 5; then
echo "Kamu ngeklik tepat waktu!"
else
echo "Kamu kelamaan."
fi
Di sini, script bakal nunggu input selama 5 detik. Kalau kamu ngeklik Enter
dalam waktu itu, bakal muncul pesan “Kamu ngeklik tepat waktu!”. Kalau nggak, muncul “Kamu kelamaan.”.
Nah, itu dia beberapa cara ngebuat delay atau timer di Bash. Semua pake cara-cara simpel yang bisa kamu coba langsung. Pake sleep
buat delay, while
buat loop berkala, for
buat countdown, at
buat jadwal, dan read
buat nunggu input atau delay.
Selamat eksperimen, ya! ✌️