Materi
Skrip shell adalah berkas teks berisi perintah yang biasa diketik satu per satu. Baris pertamanya, #!/bin/bash, disebut shebang: ia memberi tahu sistem program mana yang menjalankan berkas itu. Skrip bisa dijalankan dengan dua cara. bash skrip.sh hanya butuh izin baca. ./skrip.sh butuh izin baca dan jalan; tanpa bit x, hasilnya Permission denied dengan kode keluar 126.
Variabel dibuat dengan NAMA=nilai tanpa spasi di sekitar tanda sama dengan, lalu dibaca dengan $NAMA atau ${NAMA}. Nilai yang mengandung spasi ditulis dalam kutip, dan saat dibaca pun dikutip ("$NAMA") supaya tidak terpecah menjadi beberapa kata. Kutip tunggal mematikan pembacaan variabel: '$NAMA' tercetak apa adanya.
#!/bin/bash
# sapa-shift.sh: dipanggil dengan ./sapa-shift.sh Wulan pagi
NAMA=$1
SHIFT=$2
echo "Selamat bertugas, $NAMA, shift $SHIFT"
echo "Jumlah argumen: $#"
TANGGAL=$(date +%F)
echo "Dicatat $TANGGAL"Argumen yang ditulis sesudah nama skrip masuk ke $1, $2, dan seterusnya; $# berisi jumlahnya, $@ berisi semuanya, dan $0 nama skrip. $(perintah) diganti dengan keluaran perintah itu, sehingga hasil date, wc -l, atau pgrep bisa disimpan di variabel. $((ekspresi)) menghitung aritmetika bilangan bulat: $((7 / 2)) menghasilkan 3, bukan 3,5.
Skrip berjalan di proses shell baru. Variabel yang dibuat atau cd yang dijalankan di dalamnya hilang begitu skrip selesai. Bila memang ingin menjalankan isi berkas di shell yang sedang dipakai, gunakan source berkas atau titik di depannya. Kesalahan umum: menulis NAMA = Ani dengan spasi, yang dibaca bash sebagai perintah bernama NAMA dan berakhir dengan command not found.