如何在Bash脚本中定义函数bar,以便该脚本中的echo foo | bar将从脚本的stdin而不是管道中读取输入?换句话说,如果bar是:
bar
echo foo | bar
function bar(){ read ZOO }
我希望它等待我的输入,而不是将ZOO设置为"foo"
ZOO
"foo"
发布于 2016-05-24 02:08:28
管道的概念是将工艺的标准连接在管道的左边,把工艺的标准连接到管道的右侧。因此,在本例中,foo被插入函数bar()的stdin中。
foo
bar()
如果要从当前终端显式读取,则将 传递给read的stdin。
read
function bar() { read ZOO < /dev/tty }
https://stackoverflow.com/questions/37410155
相似问题
领取专属 10元无门槛券
AI混元助手 在线答疑
洞察 腾讯核心技术
剖析业界实践案例