- Home
- »
- Scripting & Automasi
- »
- Bash Basic
- »
- Bash #34 Setting Time Limit for Input
Share:
Table of Contents

🖥️ Pengantar
Dalam banyak skenario, kita mungkin ingin membatasi waktu pengguna untuk memberikan input agar skrip tidak menunggu tanpa batas waktu. Perintah read -t dalam Bash memungkinkan kita menentukan batas waktu untuk menerima input sebelum melanjutkan proses.
Artikel ini akan membahas:
Mengenal Perintah read -t untuk Timeout Input – Konsep dasar batas waktu input.
Sintaks Dasar read -t – Cara menggunakannya dalam skrip Bash.
Contoh Implementasi read -t – Penerapan dalam skrip interaktif.
Menangani Input Timeout – Validasi input dengan batas waktu.
Praktik Terbaik dalam Menggunakan read -t – Teknik lanjutan untuk scripting yang lebih baik.
Mari kita bahas satu per satu! 🚀
📌 1. Mengenal Perintah read -t untuk Timeout Input
Perintah read dalam Bash dapat diberi opsi -t untuk membatasi waktu tunggu input dari pengguna.
🔹 Keuntungan Menggunakan read -t:
Menghindari skrip yang terhenti menunggu input tanpa batas waktu.
Berguna untuk interaksi otomatis dengan pengguna dalam skrip.
Memungkinkan timeout dalam sistem login atau menu berbasis terminal.
📌 2. Sintaks Dasar read -t dalam Bash
Cara menggunakan read -t sangat sederhana.
🔹 Sintaks Dasar:
read -t <waktu> var |
-t <waktu> → Menentukan berapa detik skrip akan menunggu input pengguna.
var → Variabel tempat input disimpan.
🔹 Contoh Dasar:
echo -n “Masukkan nama dalam 5 detik: “ |
📌 Catatan:
Jika pengguna tidak memasukkan input dalam waktu yang ditentukan, variabel tetap kosong.
Skrip tetap melanjutkan eksekusi meskipun input belum diberikan.
📌 3. Contoh Implementasi read -t dalam Skrip Interaktif
read -t sering digunakan dalam skrip interaktif seperti menu atau sistem login otomatis.
🔹 Contoh: Timeout dalam Menu Pilihan
#!/bin/bash |
📌 Catatan:
Jika pengguna tidak memilih dalam 10 detik, sistem akan memilih opsi default.
Cocok untuk sistem otomatis yang memerlukan input cepat.
📌 4. Menangani Input Timeout dengan read -t
Dalam beberapa kasus, kita ingin memvalidasi input sebelum melanjutkan eksekusi.
🔹 Contoh: Memeriksa Apakah Input Diterima atau Timeout
#!/bin/bash |
📌 Catatan:
-s digunakan untuk menyembunyikan input pengguna (berguna untuk password).
Jika pengguna tidak memasukkan input dalam waktu yang ditentukan, skrip akan keluar.
📌 5. Praktik Terbaik dalam Menggunakan read -t
✅ Gunakan dengan Prompt yang Jelas:
echo -n “Masukkan kode akses dalam 5 detik: “ |
✅ Tambahkan Validasi Input untuk Mencegah Kesalahan:
while true; do |
✅ Gunakan Timeout untuk Skrip Login atau Akses:
if ! read -t 10 -p “Masukkan username: “ username; then |
📌 Catatan:
Jika pengguna tidak memasukkan username dalam 10 detik, skrip akan keluar.
📌 Kesimpulan
Perintah read -t dalam Bash memungkinkan kita membatasi waktu pengguna dalam memberikan input, sehingga skrip tetap responsif. Dalam artikel ini, kita telah membahas:
✅ Cara menggunakan read -t untuk membatasi waktu input. ✅ Implementasi dalam menu interaktif dan validasi input pengguna. ✅ Teknik lanjutan seperti menggunakan timeout untuk sistem login dan otomatisasi. ✅ Praktik terbaik dalam penggunaan read -t dalam skrip Bash.
Artikel Selanjutnya: 🔄 Text Processing Using sed for Stream Editing – Menggunakan sed untuk mengedit teks dalam aliran data.
📚 Daftar Pustaka
Shotts, W. E. (2019). The Linux Command Line: A Complete Introduction. No Starch Press.
GNU Bash Manual (2023). GNU Bash Reference Manual. Retrieved from https://www.gnu.org/software/bash/manual/
Linux Documentation Project. (2023). Bash Guide for Beginners. Retrieved from https://tldp.org/LDP/Bash-Beginners-Guide/html/