如何在 Bash 中循环参数($1 $2 $3 等等)?

Pom*_*rio 7 bash scripts

我有以下代码片段

for num
do
   echo $num
done
Run Code Online (Sandbox Code Playgroud)

但我不明白它为什么有效!Bash 怎么知道循环我的参数 $1, $2, $3, $... 使用我个人对“num”变量的品味???

gle*_*man 14

这是 bash 的一个特性:

for num; do ...
Run Code Online (Sandbox Code Playgroud)

是一个简写

for num in "$@"; do ...
Run Code Online (Sandbox Code Playgroud)

该文档位于http://www.gnu.org/software/bash/manual/bashref.html#Looping-Constructs

  • 为了记录,这不是 bash 特定的功能。它一直存在于原始 Bourne shell 中。(从旧的 System V 书中了解到) (2认同)