gpt4 book ai didi

linux - 如何从linux中的两个文件中添加一行的每个元素

转载 作者:太空狗 更新时间:2023-10-29 11:09:12 26 4
gpt4 key购买 nike

我想写一个如下描述的shell脚本

  1. Cat 文件 1 和文件 2,其中有 x 行数和列数(行数和列数相等)。两个文件都已创建。
  2. 脚本应将文件 1 和文件 2 中的每一行的列元素相加(每个元素的总和值)并生成输出文件 3。文件 1-:10,10,10,1011,11,11,11文件 2-:5,5,5,511,11,11file3 将有输出-:15,15,15,1522,22,22,22

最佳答案

由于您似乎知道x,即列数,您可以简单地显式求和。例如,x=4:

--- script.sh ---
#!/bin/bash
while true; do
read -r c1 c2 c3 c4 <&3
read -r d1 d2 d3 d4 <&4
if [ -z "$c1" -o -z "$d1" ]; then
break
fi
echo "$(($c1 + $d1)) $(($c2 + $d2)) $(($c3 + $d3)) $(($c4 + $d4))" >>3.txt
done 3<1.txt 4<2.txt

这是一个示例运行:

$ ./script.sh && cat 1.txt 2.txt 3.txt
1 2 3 4
5 6 7 8
9 9 9 9

1 1 1 1
1 1 1 1
1 1 1 1

2 3 4 5
6 7 8 9
10 10 10 10

关于linux - 如何从linux中的两个文件中添加一行的每个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22574367/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com