linux – 通过标准输入从shell脚本提交多个文件

前端之家收集整理的这篇文章主要介绍了linux – 通过标准输入从shell脚本提交多个文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个程序,从命令行调用时从标准输入读取.通常用户会输入一些信息,在新行上按C-d表示文件结束,程序将处理该文件.然后再次提示用户,输入更多文本,再按C-d表示第二个文件的结束.

我正在寻找一个shell脚本,它将调用该程序并自动提交这两个文件.我想做这样的事情:

$myprogram < file1.txt < file2.txt

要么

$myprogam 

有什么建议?我在Linux下使用bash shell.

最佳答案
显然你可以使用cat将两个文件发送到程序标准输入中,但这可能不是你想要的:

$cat file1.txt file2.txt | myprogram

在上面的例子中,myprogram将无法分辨file1.txt的结束和file2.txt的开始,除非它们具有特定的格式,并且它正在观察流的某些格式,表示文件的结束或开始.

没有标准方法可以将多个流发送到标准输入.基本上只有一个流进入标准输入.

您可能会构建脚本,以便它在命令行上接受多个参数,并在内部打开并一次处理一个.也就是说,你会这样称呼它:

$myprogram file1.txt file2.txt
原文链接:https://www.f2er.com/linux/441202.html

猜你在找的Linux相关文章