Apakah ada beberapa alat bawaan yang akan mengenali -x
dan --xxxx
sebagai sakelar, dan bukan argumen, atau apakah Anda harus melalui semua variabel input, menguji tanda hubung, dan kemudian menguraikan argumen setelahnya?
Jawaban yang Diterima:
Gunakan getopts
.
Ini cukup portabel seperti dalam spesifikasi POSIX. Sayangnya itu tidak mendukung opsi panjang.
Jika Anda hanya membutuhkan opsi singkat, pola penggunaan tipikal untuk getopts
(menggunakan pelaporan kesalahan non-diam) adalah:
# process arguments "$1", "$2", ... (i.e. "[email protected]")
while getopts "ab:" opt; do
case $opt in
a) aflag=true ;; # Handle -a
b) barg=$OPTARG ;; # Handle -b argument
?) ;; # Handle error: unknown option or missing required argument.
esac
done
Bagaimana Anda Dapat Menggabungkan Gambar dengan Ukuran Berbeda dengan Cerdas?
Bash Hapus Perintah Perilaku Aneh Menghapus Buffer Scrollback.?