Defensive Scripting & trap
Script shell yang rapuh bisa menghancurkan data, meninggalkan file setengah jadi, atau berjalan salah diam-diam. Shell tidak membantu secara default — kamu harus nyala-kan safety-nya sendiri.
set -e Saja Tidak Cukup
Banyak tutorial menyarankan set -e di awal script. Berguna tapi punya banyak celah:
#!/bin/bash
set -e
grep "ERROR" log.txt | wc -l # Kalau grep tidak ketemu apa-apa,
# exit code grep 1 → set -e berhenti?
# TIDAK — exit code yang dilihat adalah wc.
Solusinya pasang tiga bendera bersamaan — ini preamble defensif yang dipakai script profesional:
#!/bin/bash
set -euo pipefail
# (tambahkan: IFS=