<Sebelumnya | Konten | Selanjutnya>
menu
Jenis interaktivitas yang umum disebut didorong menu. Dalam program berbasis menu, pengguna disajikan dengan daftar pilihan dan diminta untuk memilih satu. Sebagai contoh, kita bisa membayangkan sebuah program yang disajikan sebagai berikut:
Silahkan pilih:
1. Tampilan Informasi Sistem
2. Tampilkan Ruang Disk
3. Tampilan Pemanfaatan Ruang Rumah
0. Berhenti
Masukkan pilihan [0-3] >
Silahkan pilih:
1. Tampilan Informasi Sistem
2. Tampilkan Ruang Disk
3. Tampilan Pemanfaatan Ruang Rumah
0. Berhenti
Masukkan pilihan [0-3] >
Menggunakan apa yang kita pelajari dari menulis sys_info_halaman program, kita dapat membuat program berbasis menu untuk melakukan tugas-tugas pada menu di atas:
#! / bin / bash
# read-menu: program informasi sistem berbasis menu yang jelas
gema "
Silahkan pilih:
1. Tampilan Informasi Sistem
2. Tampilkan Ruang Disk
3. Tampilan Pemanfaatan Ruang Rumah
0. Berhenti "
read -p "Masukkan pilihan [0-3] > "
#! / bin / bash
# read-menu: program informasi sistem berbasis menu yang jelas
gema "
Silahkan pilih:
1. Tampilan Informasi Sistem
2. Tampilkan Ruang Disk
3. Tampilan Pemanfaatan Ruang Rumah
0. Berhenti "
read -p "Masukkan pilihan [0-3] > "
if [[ $REPLY =~ ^[0-3]$ ]]; maka jika [[ $REPLY == 0 ]]; kemudian
echo "Program dihentikan." keluar
fi
jika [[ $JAWAB == 1 ]]; lalu gema waktu aktif "Hostname: $HOSTNAME"
keluar
fi
jika [[ $JAWAB == 2 ]]; lalu df -h
keluar
fi
jika [[ $JAWAB == 3 ]]; kemudian
jika [[ $(id -u) -eq 0 ]]; kemudian
echo "Pemanfaatan Ruang Rumah (Semua Pengguna)" du -sh /home/*
lain
echo "Utilisasi Ruang Rumah ($USER)" du -sh $HOME
keluar
kalau yang lain
echo "Entri tidak valid." >&2 keluar 1
fi
if [[ $REPLY =~ ^[0-3]$ ]]; maka jika [[ $REPLY == 0 ]]; kemudian
echo "Program dihentikan." keluar
fi
jika [[ $JAWAB == 1 ]]; lalu gema waktu aktif "Hostname: $HOSTNAME"
keluar
fi
jika [[ $JAWAB == 2 ]]; lalu df -h
keluar
fi
jika [[ $JAWAB == 3 ]]; kemudian
jika [[ $(id -u) -eq 0 ]]; kemudian
echo "Pemanfaatan Ruang Rumah (Semua Pengguna)" du -sh /home/*
lain
echo "Utilisasi Ruang Rumah ($USER)" du -sh $HOME
keluar
kalau yang lain
echo "Entri tidak valid." >&2 keluar 1
fi
Script ini secara logis dibagi menjadi dua bagian. Bagian pertama menampilkan menu dan menginput respon dari pengguna. Bagian kedua mengidentifikasi respon dan melakukan tindakan yang dipilih. Perhatikan penggunaan keluar perintah dalam skrip ini. Ini digunakan di sini untuk mencegah skrip mengeksekusi kode yang tidak perlu setelah tindakan dilakukan. Kehadiran beberapa titik keluar dalam suatu program umumnya merupakan ide yang buruk (itu membuat logika program lebih sulit untuk dipahami), tetapi itu berfungsi dalam skrip ini.