这是参数化函数的正确语法吗?
#!/bin/bash
twoPow()
{
prod=1
for((i=0;i<$1;i++));
do
prod=$prod*2
done
return prod
}
echo "Enter a number"
read num
echo `twoPow $num`
输出:
bash 示例.sh
输入一个数字
3
sample.sh:第 10 行:返回:prod:需要数字参数
第2部分:
我删除了返回,但是如果我想多次运行并存储如下结果,我该怎么办?我怎样才能使这项工作?
#!/bin/bash
tp1=1
tp2=1
twoPow()
{
for((i=0;i<$1;i++));
do
$2=$(($prod*2))
done
}
twoPow 3 tp1
twoPow 2 tp2
echo $tp1+$tp2