Materi
Setiap malam cabang mengirim berkas pesanan ke folder pesanan. Kadang ada berkas yang kosong karena kasir lupa menutup kas, kadang berkas harga atau stok belum terkirim sama sekali. Tim gudang butuh skrip impor yang mencatat apa yang terjadi dan menolak berjalan bila berkas wajib tidak lengkap.
Empat latihan berikut membangunnya. Lulus misi ini bila minimal 80 persen latihannya benar.
Pustaka lib.sh menyediakan log dan gagal. Skrip impor mengumpulkan berkas dengan array dari pola pesanan/*.csv, mencatat berapa yang ditemukan, lalu memeriksa setiap berkas: yang kosong dicatat sebagai WARN dan dilewati dengan continue, yang berisi dicatat sebagai INFO beserta jumlah barisnya. Skrip pemeriksa berkas wajib memakai array juga, dan kode keluarnya sama dengan jumlah berkas yang hilang, sehingga 0 berarti lengkap.
Dua pilihan ganda di akhir membaca skrip yang memakai set -euo pipefail. Keduanya menguji pengecualian yang ditulis manual Bash: variabel kosong di bawah -u, dan perintah gagal di dalam if atau di depan && yang tidak menghentikan skrip di bawah -e.