文件1:
456
445
2323
file2的:
433
456
323
我希望得到两个文件中数据的不足并输出到output.txt,即:
23
-11
2000
我怎么知道这个?谢谢。
答案 0 :(得分:4)
$ paste file1 file2 | awk '{ print $1 - $2 }'
23
-11
2000
答案 1 :(得分:1)
在纯粹的bash中,没有外部工具:
while read -u 4 line1 && read -u 5 line2; do
printf '%s\n' "$(( line1 - line2 ))"
done 4<file1 5<file2
这可以通过打开两个文件(将它们附加到文件描述符4和5)来实现;进入一个循环,我们在每次迭代中从每个描述符中读取一行(如果 没有值,则退出循环),并计算并打印结果。
答案 2 :(得分:1)
使用粘贴创建公式,并使用bc执行计算:
paste -d - file1 file2 | bc
答案 3 :(得分:0)
您可以使用paste和awk在列之间操作:
paste -d" " file1 file2 | awk -F" " '{print ($1-$2)}'
甚至管道到文件:
paste -d" " file1 file2 | awk -F" " '{print ($1-$2)}' > output.txt
希望它有所帮助!