STDIN和STDOUT合二为一

时间:2018-10-25 14:13:27

标签: bash shell stdout stdin

如何同时读写标准输入的输出?有可能做吗?因此,当您编写内容时,必须同时显示您的输入内容。

我找到了一个使用stdin和stdout和pipe的示例,但是我不知道如何在我的情况下使用它

<input-file.txt commandA | commandB >output-file.txt

2 个答案:

答案 0 :(得分:0)

类似的事情应该起作用:

 #!/bin/bash

 echo Enter your answer:
 read variable
 echo ${variable}

它将要求您输入一个值,将其输入,并在您按下Enter后将其输出。

更新

这也将作为一个命令起作用:

read variable && echo ${variable}

答案 1 :(得分:0)

如果我了解您...

cat < a > b

这是从a的输入重定向,到b的输出重定向。 那是你想要的吗?

尝试一下。

cat

它将坐着等你,因为默认情况下终端是STDIN。

键入某些内容并按一下-它会把它吐回来,因为默认情况下STDOUT进入控制台。它将继续执行此操作,直到您向它提供EOF字符或以其他方式(如CTRL-C)中断程序为止。

如果您需要管道,

cat | cat

(毫无意义)会做同样的事情。

将它们组合在一起以免费使用管道和重定向-

cat < a | cat > b

您能给出更明确的要求吗?