Caranya adalah dengan tidak menggunakan bashuntuk melakukan penambahan 1 .
Pertama, baca setiap angka menjadi variabel yang terpisah. Ini mengasumsikan bahwa file hanya berisi angka dan tidak ada informasi lain.
a="$(<a.txt)"
b="$(<b.txt)"
Kemudian gunakan bckalkulator untuk mendapatkan hasilnya:
bc <<<"$a + $b"
bc adalah "bahasa aritmatika dan kalkulator presisi arbitrer".
Untuk menyimpan hasilnya dalam variabel c:
c="$( bc <<<"$a + $b" )"
Jika <<<sintaksnya terasa aneh (ini disebut "di sini-string" dan merupakan ekstensi ke sintaks shell POSIX yang didukung oleh bashdan beberapa shell lain), Anda dapat menggunakan printfuntuk mengirim tambahan ke bc:
printf '%s + %s\n' "$a" "$b" | bc
Dan menyimpan hasilnya clagi:
c="$( printf '%s + %s\n' "$a" "$b" | bc )"
1 Menggunakan bashuntuk melakukan penambahan dua angka yang sangat besar akan membutuhkan implementasi, dalam bashskrip, dari rutinitas untuk melakukan aritmatika presisi arbitrer . Ini sangat bisa dilakukan, tetapi rumit dan tidak perlu karena setiap Unix datang bcyang sudah menyediakan layanan ini kepada Anda dengan cara yang relatif mudah dan dapat diakses.
pythonatau serupa dalam hal itu.