我想使用/ bin / bash(可能是/ bin / sh),并将选项-f
传递给脚本并由脚本处理。
确切地说,
while getopts f OPT
do
case $OPT in
"f" ) readonly FLG_F="TRUE"
esac
done
if [ $FLG_F ]; then
rm -rf $KIBRARY_DIR
fi
当这些行位于文件http://hoge.com/hoge.sh中时,
我可以这样做,例如,
wget http://hoge.com/hoge.sh
/bin/bash hoge.sh -f
但不是
/bin/bash -f hoge.sh
我知道原因,但我想这样做,
wget -O - http://hoge.com/hoge.sh | /bin/bash
使用-f选项为hoge.sh而不是/ bin / bash
有没有什么好方法可以做到这一点?
/bin/bash <(wget -O - http://hoge.com/hoge.sh) -f
的工作。但这只适用于bash用户,对吗?
答案 0 :(得分:3)
使用bash你可以做到
wget -O - http://hoge.com/hoge.sh | /bin/bash -s -- -f
从标准输入读取与-s
命令一样的。此选项也允许设置位置参数。 它也应该与其他POSIX shell一起使用。