我正在为一个 github 项目构建一个引导程序,并希望它是一个简单的单线。该脚本需要输入密码。
这有效并停止脚本等待输入:
curl -s https://raw.github.com/willfarrell/.vhosts/master/setup.sh -o setup.sh
bash setup.sh
这不会,只是跳过输入请求:
curl -s https://raw.github.com/willfarrell/.vhosts/master/setup.sh | bash
setup.sh 包含的代码类似于:
# code before
read -p "Password:" -s password
# code after
有没有可能有一个干净的单衬?如果是这样,一个人怎么可能做到这一点?
解决方法:
使用三个命令而不是管道输出。
curl -s https://raw.github.com/willfarrell/.vhosts/master/setup.sh -o vhosts.sh && bash vhosts.sh && rm vhosts.sh