在将脚本内容传送到 bash 以执行时,我试图为 bash 脚本提供选项。
#!/bin/bash
SETUP_PACKAGES=""
while getopts ":u:" opt; do
case $opt in
p)
if [[ "$OPTARG" =~ "mysql" ]] ; then SETUP_PACKAGES="$SETUP_PACKAGES mysql-client libmysqlclient-dev"; fi
;;
# other parts omitted...
esac
done
在 shell 中执行脚本就像./script.sh -p mysql
工作一样。目的是将脚本存储在存储库中,所以我尝试了curl -L example.com/my/script | bash -p mysql
. 然而这抛出/usr/bin/mysql: /usr/bin/mysql: cannot execute binary file
。
我需要做什么来实现我的目标?