Jawaban:
Itu adalah fitur dari for
perintah majemuk, seperti yang dijelaskan oleh help for
:
for: for NAME [in WORDS ... ] ; do COMMANDS; done
Jalankan perintah untuk setiap anggota dalam daftar.
The
for
Loop mengeksekusi urutan perintah untuk setiap anggota dalam daftar item. Jikain WORDS ...;
tidak ada, makain "$@"
diasumsikan. Untuk setiap elemen diWORDS
,NAME
diatur ke elemen itu, danCOMMANDS
dieksekusi.
Jadi kode yang Anda kutip mungkin dieksekusi dalam skrip yang dipanggil dengan 4 parameter.
for x; do …
adalah jalan pintas untuk for x in "$@"; do …
: iterates di atas parameter posisi. Jika loop empat kali, itu berarti Anda memiliki empat parameter posisi ( $1
melalui $4
).
set a b c d
beberapa waktu baru-baru ini. Saya sering menggunakanset
cara itu dalam skrip untuk menguji .. Setelah memulai ulang terminal, itu telah berhenti ... (masuk akal sekarang) ..