Yanıtlar:
Bu, forbileşik komutun bir özelliğidir help for:
for: for NAME [in WORDS ... ] ; do COMMANDS; doneListedeki her üye için komutları yürütün.
forDöngü öğeleri listesindeki her üyesi için bir komut dizisi yürütür. Eğerin WORDS ...;mevcut değilse, oin "$@"zaman varsayılır. İçindeki her öğe içinWORDS,NAMEo öğeye ayarlanır veCOMMANDSyürütülür.
Dolayısıyla, alıntıladığınız kod muhtemelen 4 parametre ile çağrılan bir kodda yürütülür.
for x; do …kısayoludur for x in "$@"; do …: konumsal parametreler üzerinde yineleme yapar. O dört kez döngüler halinde, bu (dört konumsal parametreler var demektir $1aracılığıyla $4).
set a b c dSon zamanlarda bir süre kullanmalıydım. Sık sıksettest için bir senaryoda bu şekilde kullanıyorum . Terminali yeniden başlattıktan sonra durdu ... (şimdi mantıklı) ..