我有一个bash文件,其中我传递参数,像bash脚本不分配标志变量
bash foo.sh update -f /var/ -v true
所以according to this answer我的脚本看起来应该像
if [[ "$1" == "update" ]]; then
updater
fi
function updater(){
verbose='false'
fflag=''
error=''
while getopts 'f:v' flag; do
case "${flag}" in
f) fflag="${OPTARG}";;
v) verbose='false';;
*) error="bflag";;
esac
done
echo $fflag
}
我使用的第一个脚本一个入口点,因为我有其他功能,做其他事情,但由于某种原因,上面的脚本甚至没有显示的价值$fflag
我试图移出getopts循环出功能,无济于事
您是否正在上面运行此脚本。它实际上无法运行! – Inian
移动零件'if [[“$ 1”==“update”]];然后 更新程序 函数调用 – Inian