我试图传递一个install命令作为bash脚本的参数,但是这个特定的命令段curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh
在我的脚本内部执行之前在我的终端外部执行。有什么解决办法吗?我需要运行作为参数传递到脚本中的任何命令。下面是我到目前为止的实现。
install_package () {
$2
EXITCODE=$?
if [ "$EXITCODE" -ne "0" ]; then
exit $EXITCODE
fi
}
install_package "brew" "/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)""
字符串
1条答案
按热度按时间gcuhipw91#
我会使用
"$@"
,而不是将所有内容都塞进$2
:字符串
用任意数量的参数调用它。有关引用
$@
的效果,请参阅您的shell手册。基本上,它保持位置参数$1.$n不被单词分割。