# Print $1 $2 times
function foo() {
for (( i=0; i<$2; i++ )); do
echo -n $1
done
echo
}
# Print $1 $2x$3 times
function bar() {
for (( i=0; i<$3; i++ )); do
foo $1 $2
done
}
bar $1 $2 $3
Run Code Online (Sandbox Code Playgroud)
的理想输出foobar.sh @ 3 3
是
@@@
@@@
@@@
Run Code Online (Sandbox Code Playgroud)
但实际输出似乎只是
@@@
Run Code Online (Sandbox Code Playgroud)
将变量更改为bar()
fromi
会j
产生所需的输出。但为什么?