次の数字を含むtxtファイルがあります。
1
2
3
4
5
行数は同じですが、数値が異なる別のtxtファイルがあります。
6
7
8
9
10
1+6、2+7、3+8などを一緒に追加したいです。スクリプトはどのように書きますか?
ところで、私はこれまでさまざまな回答を得て、私のファイルで答えを試した後、いくつかのメソッドが少数を処理しないことに気づきました。私のファイルの中には少数が含まれており、正確でなければなりません。答えに追加したい場合は、素数を正確に計算する方法を教えてください。ありがとうございます。
ベストアンサー1
このpaste
行に沿って、次のように数学を実行しますbc
。
$ paste -d+ file1 file2 | bc
7
9
11
13
15
中間結果(前bc
):
$ paste -d+ file1 file2
1+6
2+7
3+8
4+9
5+10
より bash 中心の解決策のために、file2 に少なくとも file1 と同じ数の行があるとします。
mapfile -t file1 < file1
mapfile -t file2 < file2
for((i=0; i < ${#file1[@]}; i++))
do
printf '%d\n' $((file1[i] + file2[i]))
done
...整数でない場合は、次のアイデアを組み合わせてください。
mapfile -t file1 < file1
mapfile -t file2 < file2
for((i=0; i < ${#file1[@]}; i++))
do
printf '%d + %d\n' "${file1[0]}" "${file2[0]}" | bc
done