我试图找出如何在同一bash脚本中将带有函数调用的参数从一个函数传递到另一个函数。这是到目前为止我得到的:
#!/usr/bin/env bash
# File: nevens.sh
function isiteven {
if (( "$element%2"=="0" ))
then
echo 1
fi
}
function nevens {
local result=0
for element in $@
do
if (( $(isiteven) == 1 )) # $(isiteven "$element")
then
result=$result+1
fi
done
echo $result
}
我尝试在isiteven函数内的$(isiteven)
前面调用$element
并硬编码%2==0
。而且我尝试通过函数调用$(isiteven $element)
或$(isiteven "$element")
传递参数,但是然后我不确定应该在%2==0
前面编写什么代码来进行数学运算。
我正在专用计算机上使用Ubuntu 18.04。
答案 0 :(得分:2)
就像编写脚本一样。
# Just an example to indicate to how to pass arguments.
isiteven() {
echo "Command line arguments: $@"
}
nevens() {
declare result=0
declare element
for element in "$@"; do
# Do necessary logic here.
isiteven "$element"
done
}