重定向stdin从文件中读取,同时将stdin保持为Bash中的输入

时间:2016-10-05 15:22:13

标签: bash file-io

我尝试构建一个程序,一直要求用户输入。要测试这个程序(Xtreme编程),在每次测试中输入所有这些输入是一项很大的工作。所以我决定将输入写入文件并将stdin重定向到该文件,如

NSURLSessioncat inputs.txt | ./myprogram

到目前为止这个工作正常,但是我希望能够在文件达到EOF之后自己输入其他输入(也就是之前并不重要),所以程序第一部分的输入(我是已经知道工作了)将自动写入,我可以输入其余部分。

1 个答案:

答案 0 :(得分:2)

myColumn.setComparator(Comparator.comparing(s -> { int index = s.indexOf(" "); if (index == -1) return s ; return s.substring(0, index); })); 可以读取多个文件,包括使用名称"的标准输入 - ":

cat

如果需要在当前shell中运行cat inputs.txt - | ./myprogram ,事情会变得棘手。您可以使用流程替换:

./myprogram

或命名管道:

./myprogram < <(cat inputs.txt -)