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 16 dari 17

Skrip bash untuk otomasi

Heredoc dan skrip cadangan

Setelah pelajaran ini kamu bisa menulis berkas berbaris banyak dengan heredoc, membedakan heredoc berkutip dan tanpa kutip, dan menyusun skrip cadangan bertanggal.

±13 menitDiperiksa 3 Okt 2026

Materi

Heredoc mengalirkan beberapa baris teks ke sebuah perintah sampai bertemu baris penanda. Bentuk cat > berkas <<EOF diikuti baris-baris isi lalu EOF menulis semua baris itu ke berkas. Nama penandanya bebas; EOF hanya kebiasaan. Di terminal, bash menampilkan prompt > selama penandanya belum ditulis.

cat > /opt/kasir/jam-buka.txt <<EOF
Senin-Jumat 08.00-21.00
Sabtu 09.00-15.00
EOF

Ada satu perbedaan penting. Tanpa kutip (<<EOF), bash mengganti $VARIABEL, $(perintah), dan $((aritmetika)) di dalam isi saat heredoc dibaca. Dengan penanda berkutip (<<'EOF'), isi ditulis persis seperti diketik. Karena itu, skrip yang ditulis lewat heredoc memakai <<'EOF': variabel seperti $1 dan $(date +%F) harus sampai ke berkas skrip apa adanya, lalu dihitung setiap kali skripnya dijalankan, bukan sekali saat skripnya ditulis. Bentuk <<-EOF membuang tab di awal baris isi.

cat > cadang-konfigurasi.sh <<'EOF'
#!/bin/bash
TUJUAN=~/cadangan/konfigurasi-$(date +%F)
mkdir -p "$TUJUAN"
cp -r /opt/kasir/conf "$TUJUAN"/ 2>> ~/cadangan/galat.log || exit 1
echo "tersimpan di $TUJUAN"
EOF
chmod 755 cadang-konfigurasi.sh

Skrip cadangan di atas memakai unsur dari pelajaran sebelumnya: date +%F mencetak tanggal berbentuk 2026-09-22 sehingga setiap hari punya folder sendiri yang urut secara abjad; mkdir -p tidak mengeluh bila foldernya sudah ada; cp -r menyalin folder beserta isinya; 2>> menambahkan pesan galat ke berkas log; dan || exit 1 menghentikan skrip dengan kode gagal bila penyalinan gagal. Di server sungguhan skrip seperti ini dijadwalkan dengan cron agar jalan otomatis setiap malam; cron tidak tersedia di simulator.

Latihan

0/3 lulus

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

Latihan 3 dari 3

Admin menulis skrip lewat cat > c.sh <<EOF (tanpa kutip) dengan baris TUJUAN=cadangan-$(date +%F), pada 22 September. Apa isi baris itu di berkas c.sh?

Pilih satu jawaban

Catatanmu

Memuat catatan…

tersimpan otomatis, ikut tercetak · 0/4.000

Luluskan semua latihan dulu untuk menandai pelajaran ini selesai.

Lanjutkan ke

Tampilkan 1 lagi