Contoh # 1:
Buat fail bash dengan skrip berikut. Apabila anda menjalankan skrip, ia akan berterusan sehingga pengguna menekan sebarang kekunci. Skrip akan menunggu input pengguna dalam setiap 3 saat dan jika pengguna tidak menekan sebarang kekunci maka ia akan mencetak mesej, menunggu penekanan kekunci .
#! / bin / bash
membuang 'Tekan mana-mana butang untuk meneruskan'
sementara [ benar ];buat
membaca -t 3 -n 1
sekiranya [ $?=0 ];kemudian
jalan keluar;
yang lain
membuang 'menunggu penekanan kekunci'
menjadi
selesai
Jalankan skrip.
$bashkunci1.sh
Pengeluaran:
Contoh # 2:
Buat fail bash dengan skrip berikut. Gelung sementara tanpa batas digunakan dalam contoh ini yang akan berakhir apabila pengguna akan menekan ‘q’. Sekiranya pengguna menekan sebarang kekunci tanpa ‘q’ maka nilai pemboleh ubah pembilang akan dinaikkan sebanyak 1 dan mencetak nilainya.
#! / bin / bashmembuang 'Tekan' q 'untuk keluar'
mengira=0
sementara:;buat
membaca -n 1ke<&1
sekiranya [[ $ k= q]];kemudian
printf ' nBerhenti dari program n'
rehat
yang lain
((mengira=kiraan $+1))
printf ' nMenetapkan untukkiraan $kali n'
membuang 'Tekan' q 'untuk keluar'
menjadi
selesai
Jalankan skrip.
$bashkunci2.sh
Pengeluaran:
Contoh # 3:
Buat fail bash dengan skrip berikut yang akan melakukan pelbagai jenis tugas berdasarkan kekunci yang ditekan oleh pengguna. Sekiranya pengguna menekan ‘1’ maka ia akan menambahkan dua argumen baris perintah dan mencetak. Sekiranya pengguna menekan ‘2’ maka ia akan mengurangkan dua argumen baris perintah dan mencetak. Skrip akan berjalan berterusan sehingga pengguna menekan ‘3’.
#! / bin / bashv1=$ 1
v2=$ 2
sementara:
buat
membuang '1. Penambahan '
membuang '2. Penolakan '
membuang '3. Keluar '
membuang -n 'Jenis 1 atau 2 atau 3:'
membaca -n 1 -t lima belaske
printf ' n'
kes $ a dalam
1* ) membuang '$ v1+$ v2=$ (($ v1 + $ v2)) ';;
2* ) membuang '$ v1-$ v2=$ (($ v1- $ v2)) ';;
3* ) jalan keluar 0;;
* ) membuang 'Cuba lagi.';;
esac
selesai
Jalankan skrip dengan dua nilai argumen numerik.
$bashkunci3.sh35 lima belasPengeluaran:
Contoh # 4:
Buat fail bash dengan skrip berikut. Skrip akan berakhir apabila pengguna menekan kekunci ESC. Skrip ini akan mencetak kekunci yang ditekan oleh pengguna sehingga kekunci ESC ditekan.
#! / bin / bashinput pengguna=''
membuang 'Tekan kekunci ESC untuk berhenti'
# baca satu watak
sementara membaca -r -n1kunci
buat
# jika input == kekunci ESC
sekiranya [[ kunci $== $' Dan' ]];
kemudian
rehat;
menjadi
# Tambahkan kunci ke pemboleh ubah yang ditekan oleh pengguna.
input pengguna + =kunci $
selesai
printf ' nAnda telah menaip:$ userinput n'
Jalankan skrip.
$bashkunci4.shPengeluaran:
Contoh # 5:
Buat fail bash dengan kod berikut yang akan menunggu kunci ENTER untuk menghentikan skrip. Skrip akan mengambil nama pelayan sebagai input dan akan cuba melakukan ping pelayan dalam setiap 2 saat. Sekiranya arahan ping mendapat tindak balas dari pelayan maka ia akan menghentikan skrip dengan memaparkan output jika tidak, ia akan menunggu tindak balas pengguna atau kunci ENTER dengan mencetak mesej, Mencuba untuk menyambung dengan….
#! / bin / bashmembuang 'Masukkan alamat pelayan yang ingin anda ping'
membacapelayan
sementara ! ping -c 1 -n -IN 2 pelayan $
buat
membuang 'Cuba berhubung denganpelayan $'
membuang 'Tekan [ENTER] untuk menamatkan'
membaca -s -N 1 -t 1kunci
sekiranya [[ kunci $== $' x0a' ]];# jika input == kekunci ENTER
kemudian
jalan keluar 0
menjadi
selesai
printf '% s n' 'pelayan $adalah berlari'
Jalankan skrip.
$bashkunci5.shPengeluaran:
Kesimpulan:
Tutorial ini menunjukkan bagaimana anda dapat menulis skrip bash dengan pelbagai cara yang akan menunggu input pengguna untuk melakukan tugas tertentu atau menghentikan skrip. Harap, setelah mengamalkan contoh-contoh di atas, anda akan dapat menulis skrip sedemikian rupa sehingga dapat menunggu penekanan kekunci dan melakukan tugas tertentu berdasarkan kekunci yang ditekan oleh pengguna.