Latihan 1: Defensive Scripting & trap — Terminal

Latihan 1 dari materi Defensive Scripting & trap di Terminal — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.

"Harden" sebuah script dengan menganalisis preamble dan simulasi trap cleanup.

1. analyzePreamble(line) Terima string baris preamble seperti "set -euo pipefail" dan kembalikan array flag yang aktif — pilih dari "exit-on-error", "undefined-fails", "pipefail", "xtrace" sesuai e, u, o pipefail, x. Abaikan opsi lain.

Contoh:

2. defaultValue(expr, env) Implementasi parameter expansion ${VAR:-default}. Input: string expr seperti "${HOST:-localhost}" dan object env. Return string.

3. createScriptRunner() Return object { onExit, run }:

Hint