Saya bertanya-tanya, apakah mungkin melakukan matematika sederhana di bash? Saya sedang memikirkan sesuatu seperti, = 25-5 akan mencetak 20 atau sesuatu.
Bisakah ini dilakukan dengan mudah?
Terima kasih
Saya bertanya-tanya, apakah mungkin melakukan matematika sederhana di bash? Saya sedang memikirkan sesuatu seperti, = 25-5 akan mencetak 20 atau sesuatu.
Bisakah ini dilakukan dengan mudah?
Terima kasih
Jawaban:
Ketikkan saja bc
di terminal. Kemudian ketikkan semua hal matematika setelah itu.
bc
singkatan dari " b asic c alculator"
Kemudian ketik quit
dan masukkan untuk keluar.
echo '0.6 * 12' | bc
echo "scale=2;557/3672" | bc
Jika kita benar-benar berbicara tentang Bash, bukan Bourne Shell (sh) atau kerang lain, itu mudah.
Bash dapat menghitung ekspresi dasar dengan $ ((ekspresi)) dan inilah contoh bagaimana Anda ingin menggunakannya:
a = 3 b = 4 c = $ ((7 * a + b)) gema $ c
atau untuk penggunaan interaktif, adil
echo $ ((7 * 3 + 4))
$((expression))
sintaks merupakan bagian dari POSIX sh
standar, dan berasal dari ksh
.
Ada sejumlah utilitas baris perintah untuk melakukan perhitungan sederhana:
$ expr 100 \* 4
400
$ echo '100 * 4' | bc
400
untuk menyebutkan hanya dua dari mereka. Hati-hati melakukan penggandaan seolah-olah Anda tidak lolos * shell Anda mungkin mencoba dan menafsirkannya sebagai wildcard.
Lainnya adalah AWK:
awk 'BEGIN {print 4 + 3 / 12}'
Baiklah pertanyaan Anda dijawab, tetapi pertimbangkan ini:
Sebagian besar distro linux memiliki python yang sudah diinstal, jadi mengapa tidak menggunakannya?
Ketik saja
python
di terminal dan kemudian lakukan semua aritmatika yang Anda inginkan, seperti
2+2
Akan menampilkan 4 :)
Anda juga dapat melakukan ini langsung dari terminal dengan -c
argumen python.
python -c 'print 2+2'
python
membutuhkan waktu hampir dua detik untuk memulai. Agak menyebalkan jika Anda hanya ingin melakukan sesuatu yang sederhana seperti 2 + 2.
2 / 30
(python: 0
) (python3: 0.06666666666666667
)
2//30
atauint(2/30)
Atau Ruby. :)
Meskipun mungkin tidak diinstal sebelumnya, ini cukup cepat.
Ketikkan irb
, lalu 2+2
.
Atau hanya ruby -e 'p 2+2'
Perl adalah pilihan lain:
perl -E 'say 1/7'
output
0.142857142857143