Lompat ke konten utama

Kompetisi Ajak Teman: hadiah total Rp1.000.000 tunai untuk 3 pengajak terbanyak. Berakhir 29 November 2026. Ikut kompetisi

←

Administrasi Linux Dasar

Pelajaran 14 dari 17

Skrip bash untuk otomasi

Kondisi dan kode keluar: if, test, $?

Setelah pelajaran ini kamu bisa membaca kode keluar perintah, menulis if dengan test berkas, teks, dan angka, serta mengakhiri skrip dengan exit.

±13 menitDiperiksa 3 Okt 2026

Materi

Setiap perintah berakhir dengan kode keluar: 0 berarti berhasil, selain 0 berarti gagal atau tidak ditemukan. Kode perintah terakhir tersimpan di $?. grep berakhir 0 bila menemukan baris dan 1 bila tidak; perintah yang tidak ada berakhir 127; berkas yang tidak boleh dijalankan berakhir 126. Skrip memilih kodenya sendiri dengan exit N.

grep -q kasir /etc/group; echo $?
0
ls /opt/tidak-ada 2> /dev/null || echo "folder tidak ada"
folder tidak ada

&& menjalankan perintah kanan hanya bila perintah kiri berhasil; || hanya bila gagal. if bekerja dengan cara yang sama: ia menjalankan perintah sesudah if, lalu memilih cabang then bila kodenya 0, dan cabang elif atau else bila bukan. Perintah yang paling sering ditaruh di situ adalah test, ditulis [ ... ] dengan spasi di dalam kurung.

UjiBenar bila
[ -f berkas ]berkas biasa itu ada
[ -d folder ]folder itu ada
[ -x berkas ]berkas boleh dijalankan
[ -z "$A" ]teks A kosong
[ "$A" = "$B" ]kedua teks sama
[ $N -gt 5 ]angka N lebih dari 5 (juga -eq -ne -lt -le -ge)
[ ! -f berkas ]kebalikan: berkas itu tidak ada
if [ -d /opt/kasir ]; then
  echo "kasir terpasang"
else
  echo "kasir belum dipasang" >&2
  exit 3
fi

Angka dibandingkan dengan -eq, -lt, -gt dan sejenisnya, sedangkan = dan != untuk teks. Kesalahan umum: [ $N > 5 ] tidak membandingkan angka; tanda > di situ mengalihkan keluaran ke berkas bernama 5. Kesalahan kedua: variabel kosong tanpa kutip membuat [ $A = x ] berubah menjadi [ = x ] dan menghasilkan unary operator expected; kutip variabelnya.

Latihan

0/3 lulus

Jawaban diperiksa di server. Lulus berarti kamu memahami contohnya, bukan penilaian seluruh pekerjaanmu.

Catatanmu

Memuat catatan…

tersimpan otomatis, ikut tercetak · 0/4.000

Luluskan semua latihan dulu untuk menandai pelajaran ini selesai.

Lanjutkan ke

Tampilkan 1 lagi