Katakanlah saya memiliki skrip melakukan:
some-command "$var1" "$var2" ...
Dan, dalam hal yang var1
kosong, saya lebih suka bahwa itu diganti dengan apa pun selain string kosong, sehingga perintah yang dijalankan adalah:
some-command "$var2" ...
dan tidak:
some-command '' "$var2" ...
Apakah ada cara yang lebih sederhana daripada menguji variabel dan memasukkannya secara kondisional?
if [ -n "$1" ]; then
some-command "$var1" "$var2" ...
# or some variant using arrays to build the command
# args+=("$var1")
else
some-command "$var2" ...
fi
Apakah ada substitusi parameter daripada yang bisa diperluas ke bash, zsh, atau sejenisnya? Saya mungkin masih ingin menggunakan globbing di sisa argumen, jadi menonaktifkan itu dan menghapus tanda kutip variabel bukanlah pilihan.
man
halaman? (-;