我有非常简单的脚本(for_loop4.sh),如下所示。
# !/bin/zsh
#
for (( i = 0; i < 3; i++ ))
do
echo $i;
done
我的 shell 使用 zsh 5.0.7。
使用 source、zsh 和 . 命令,它按预期工作。但是,当直接调用此脚本时,它会失败并显示“循环变量错误”消息。
为什么会这样?有什么区别?
$ source ./for_loop4.sh
0
1
2
$ zsh ./for_loop4.sh
0
1
2
$ . ./for_loop4.sh
0
1
2
$ ./for_loop4.sh
./for_loop4.sh: 4: ./for_loop4.sh: Syntax error: Bad for loop variable