写了一个简单的程序,就读入两个数据,然后输出
#include<iostream>
#include<cstdio>
using namespace std;
int main() {
int a,b;
while(scanf("%d %d",&a,&b) != EOF) {
printf("%d %d\n",a+1,b+1);
}
}
然后我想通过shell脚本来重定向输入数据到这个程序中,然后再把结果重定向输出到某个txt中,怎么搞呢
难点在于平常重定向输入的都是"一次执行的程序",并不会像上面那个程序一样会有一个while循环在,是一个交互式的程序,幸好还是在文档里面找到了尝试方法
#!/bin/bash
(while read LINE
do
./test << EOF
$LINE
EOF
done < in.txt
) > out.txt
这个骚操作叫 Here Documents
文档在 http://tldp.org/LDP/abs/html/here-docs.html
神奇的不行~