即使在管道中调用,我怎么能从 stdin 中调用



如何在 Bash 脚本中定义bar函数,以便该脚本中的echo foo | bar将从脚本的 stdin 而不是管道读取输入?换句话说,如果bar是:

function bar(){
  read ZOO
}

我希望它等待我的输入,而不是将ZOO设置为"foo"

管道的想法是将管道左侧的流程标准输出与管道右侧的过程标准输出连接起来。因此,在这种情况下,foo被管道传输到函数bar()的 stdin

.

如果要从当前终端显式读取,则将特殊设备/dev/tty传递给 read 的 stdin:

function bar() {
    read ZOO < /dev/tty
}

相关内容

  • 没有找到相关文章

最新更新