次のように、2 つの列を持つ 1 つの行を含む 3 つのファイルがあります。
file1.txt
3 5
file2.txt
2 6
file3.txt
6 3
次のように、最初の列と秒の列をそれぞれ合計する単一のファイルにそれらを結合したいと思います。
最終ファイル.txt
11 14
Unixコマンドでそれを行う必要があります
これを使用する簡単な方法は次のawk
とおりです。
awk '{ one+=$1; two+=$2 } END { print one, two }' file[1-3].txt > finalfile.txt
助けを求める前に、自分で問題を解決する必要があります。しかし、私はその問題が興味深いと思います。以下は、bash スクリプトを使用した可能な解決策です。
cat file1.txt file2.txt file3.txt > treefiles.txt
suma=0;
sumb=0;
while read a b
do
suma=$((suma + a));
sumb=$((sumb + b));
done < treefiles.txt;
echo "$suma $sumb";
コメントを考慮して:
suma=0;
sumb=0;
while read a b
do
((suma += a));
((sumb += b));
done < <(cat f1.txt f2.txt f3.txt)
echo "$suma $sumb";