ในบทความนี้ เราจะแสดงวิธีต่างๆ ที่มีประโยชน์สำหรับการคำนวณคณิตศาสตร์ในเทอร์มินัล Linux จนจบบทความ คุณจะเรียนรู้วิธีการคำนวณคณิตศาสตร์พื้นฐานแบบปฏิบัติจริงในบรรทัดคำสั่ง
มาเริ่มกันเลย!
1. ใช้ Bash Shell
วิธีแรกและง่ายที่สุดสำหรับคณิตศาสตร์พื้นฐานบน CLI ของ Linux คือการใช้วงเล็บคู่ (double parentheses) นี่คือตัวอย่างที่ใช้ค่าที่เก็บในตัวแปร:
$ ADD=$(( 1 + 2 )) $ echo $ADD $ MUL=$(( $ADD * 5 )) $ echo $MUL $ SUB=$(( $MUL - 5 )) $ echo $SUB $ DIV=$(( $SUB / 2 )) $ echo $DIV $ MOD=$(( $DIV % 2 )) $ echo $MOD

2. ใช้คำสั่ง expr
คำสั่ง expr ประเมินนิพจน์และพิมพ์ค่าของนิพจน์ที่ให้มาไปยัง standard output เราจะดูวิธีใช้ expr สำหรับคณิตศาสตร์ง่ายๆ การเปรียบเทียบ การเพิ่มค่าตัวแปร และการหาความยาวสตริง
ตัวอย่างการคำนวณง่ายๆ ด้วย expr โปรดทราบว่าตัวดำเนินการหลายตัวต้อง escape หรือ quoted สำหรับ shells เช่น ตัวดำเนินการ * (จะดูเพิ่มเติมภายใต้การเปรียบเทียบนิพจน์)
$ expr 3 + 5 $ expr 15 % 3 $ expr 5 \* 3 $ expr 5 – 3 $ expr 20 / 4

ต่อไป เราจะครอบคลุมการเปรียบเทียบ เมื่อนิพจน์ประเมินเป็น false expr จะพิมพ์ค่า 0 มิฉะนั้นพิมพ์ 1
ตัวอย่าง:
$ expr 5 = 3 $ expr 5 = 5 $ expr 8 != 5 $ expr 8 \> 5 $ expr 8 \< 5 $ expr 8 \<= 5

คุณยังสามารถใช้ expr เพิ่มค่าตัวแปรได้ ดูตัวอย่าง (ลดค่าได้เช่นกัน):
$ NUM=$(( 1 + 2)) $ echo $NUM $ NUM=$(expr $NUM + 2) $ echo $NUM

มาดูวิธีหาความยาวสตริงด้วย:
$ expr length "This is Tecmint.com"

ข้อมูลเพิ่มเติมเกี่ยวกับความหมายของตัวดำเนินการ ดู man page ของ expr:
$ man expr
3. ใช้คำสั่ง bc
bc (Basic Calculator) เป็นยูทิลิตีบรรทัดคำสั่งที่ให้คุณสมบัติครบครันของเครื่องคิดเลขวิทยาศาสตร์หรือการเงินง่ายๆ เหมาะสำหรับคณิตศาสตร์จุดทศนิยม (floating point math) โดยเฉพาะ
หาก bc command ยังไม่ติดตั้ง ติดตั้งได้ด้วย:
$ sudo apt install bc #Debian/Ubuntu $ sudo yum install bc #RHEL/CentOS $ sudo dnf install bc #Fedora 22+
ติดตั้งแล้ว รันในโหมดโต้ตอบ (interactive) หรือ non-interactive โดยส่งอาร์กิวเมนต์ – เราจะดูทั้งสองกรณี รันโหมดโต้ตอบ พิมพ์คำสั่ง bc ที่ prompt และเริ่มคำนวณ:
$ bc

ตัวอย่างการใช้ bc แบบ non-interactive บนบรรทัดคำสั่ง:
$ echo '3+5' | bc $ echo '15 % 2' | bc $ echo '15 / 2' | bc $ echo '(6 * 2) - 5' | bc

แฟล็ก -l ใช้ตั้งค่า scale เริ่มต้น (หลักทศนิยม) เป็น 20 ตัวอย่าง:
$ echo '12/5 | bc' $ echo '12/5 | bc -l'

4. ใช้คำสั่ง Awk
Awk เป็นโปรแกรมประมวลผลข้อความ (text-processing) ที่โดดเด่นที่สุดใน GNU/Linux รองรับตัวดำเนินการคณิตศาสตร์ บวก, ลบ, คูณ, หาร, และ modulus เหมาะสำหรับคณิตศาสตร์จุดทศนิยมเช่นกัน
ใช้คำนวณพื้นฐานได้ดังนี้:
$ awk 'BEGIN { a = 6; b = 2; print "(a + b) = ", (a + b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a - b) = ", (a - b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a * b) = ", (a * b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a / b) = ", (a / b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a % b) = ", (a % b) }'

หากคุณเพิ่งรู้จัก Awk เรามีชุดคู่มือครบครัน: Learn Awk Text Processing Tool
5. ใช้คำสั่ง factor
คำสั่ง factor ใช้แยกตัวประกอบเฉพาะ (prime factors) ของจำนวนเต็ม ตัวอย่าง:
$ factor 10 $ factor 127 $ factor 222 $ factor 110

ขอจบครับ! ในบทความนี้เราอธิบายวิธีต่างๆ สำหรับการคำนวณคณิตศาสตร์ในเทอร์มินัล Linux รู้สึกเสรีได้ที่จะถามคำถามหรือแบ่งปันความคิดเห็นผ่านฟอร์มด้านล่าง