从curl管道运行时跳过macos – bash read

我正在为 github项目构建一个bootstrap,并希望它是一个简单的单行程序.该脚本需要密码输入. 这可以工作并停止脚本等待输入: curl -s https://raw.github.com/willfarrell/.vhosts/master/setup.sh -o setup.shbash setup.sh 这不,只是跳过输入请求: curl -s

我正在为
github项目构建一个bootstrap,并希望它是一个简单的单行程序.该脚本需要密码输入.

这可以工作并停止脚本等待输入:

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

解决方法

使用管道,读取从标准输入(管道)读取,但是shell已经读取了所有标准输入,因此读取没有任何内容.

作者: dawei

【声明】:西安站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部