วิธีเพิ่มการคำนวณลงใน Bash Script
สิ่งที่ต้องรู้
- ใช้ ปล่อย คำสั่งเพื่อสร้างการประเมินทางคณิตศาสตร์ของนิพจน์เช่นin ให้ ม=(4 * 1024).
- การคำนวณทางคณิตศาสตร์ที่ใช้ได้นั้นคล้ายคลึงกับการดำเนินการในภาษาโปรแกรมมาตรฐาน เช่น Java และ C
- ตัวดำเนินการ let ใช้ได้กับเลขคณิตจำนวนเต็มเท่านั้น สำหรับเลขทศนิยม ให้ใช้ GNU เครื่องคิดเลข bc.
แม้ว่า Bash จะเป็นภาษาสคริปต์ แต่ก็มีความสามารถส่วนใหญ่ของภาษาโปรแกรมเอนกประสงค์ ซึ่งรวมถึงฟังก์ชันเลขคณิต ต่อไปนี้คือวิธีเพิ่มการคำนวณให้กับสคริปต์ทุบตี
วิธีเพิ่มการคำนวณลงใน Bash Script
มีจำนวน ไวยากรณ์ ตัวเลือกที่คุณสามารถใช้เพื่อทำให้เกิดการประเมินนิพจน์ทางคณิตศาสตร์ บางทีสิ่งที่อ่านง่ายที่สุดคือ ปล่อย สั่งการ. ตัวอย่างเช่น:
ให้ ม=(4 * 1024)
จะคำนวณ 4 คูณ 1024 และกำหนดผลลัพธ์ให้กับตัวแปร "m"
คุณสามารถพิมพ์ผลลัพธ์โดยเพิ่ม an เสียงก้อง คำแถลง:
เสียงสะท้อน $m
คุณยังสามารถสร้างไฟล์ที่มีคำสั่ง Bash ได้ ซึ่งในกรณีนี้ คุณควรเพิ่มบรรทัดที่ด้านบนของไฟล์ที่ระบุโปรแกรมที่ควรรันโค้ด ตัวอย่างเช่น:
#! /bin/bash
สมมติว่าโปรแกรมปฏิบัติการ Bash อยู่ใน /bin/bash. คุณต้องตั้งค่าการอนุญาตของไฟล์สคริปต์เพื่อให้สามารถเรียกทำงานได้ สมมติว่าชื่อไฟล์สคริปต์คือ
chmod +x script1.sh
หลังจากนั้นคุณสามารถดำเนินการได้ด้วยการ สั่งการ:
./script1.sh
การดำเนินการเลขคณิตที่มีอยู่นั้นคล้ายคลึงกับการดำเนินการในภาษาโปรแกรมมาตรฐานเช่น Java และ C นอกจากการคูณ ดังที่แสดงไว้ข้างต้น คุณใช้การบวก:
ให้ ม=(5 + 5)
หรือการลบ:
ให้ ม=(10 - 2)
หรือแผนก:
ให้ ม=(10/2)
หรือโมดูโล (ส่วนที่เหลือหลังการหารจำนวนเต็ม):
ให้ ม= (11/2)
เมื่อใช้การดำเนินการกับตัวแปรเดียวกันกับที่ได้รับมอบหมายผลลัพธ์ คุณสามารถใช้ตัวดำเนินการกำหนดชวเลขเลขคณิตมาตรฐานได้ หรือจะเรียกว่าตัวดำเนินการกำหนดแบบผสมก็ได้ ตัวอย่างเช่น เรามี:
(( ม+=15 ))
ซึ่งเทียบเท่ากับ "m = m + 15" สำหรับการลบเรามี:
(( ม-=3 ))
ซึ่งเทียบเท่ากับ "m = m - 3" สำหรับแผนกเรามี:
(( ม./=5 ))
ซึ่งเทียบเท่ากับ "m = m / 5" และสำหรับโมดูโล เรามี:
(( m%=10 ))
ซึ่งเทียบเท่ากับ "m = m % 10"
นอกจากนี้ คุณสามารถใช้ เพิ่มขึ้น และ ลดลง ผู้ประกอบการ:
(( ม++ ))
มีค่าเท่ากับ "m = m + 1" และ.
(( NS-- ))
เทียบเท่ากับ "m = m - 1"
เลขทศนิยมใน Bash
NS ปล่อย ตัวดำเนินการใช้ได้กับเลขคณิตจำนวนเต็มเท่านั้น สำหรับเลขทศนิยม คุณสามารถใช้เช่น GNU เครื่องคิดเลข bc ดังแสดงในตัวอย่างนี้:
เสียงสะท้อน 32.0+1.4 | bc
ตัวดำเนินการ "ท่อ" "|" ส่งผ่านนิพจน์เลขคณิต "32.0 + 1.4" ไปยังเครื่องคิดเลข bc ซึ่งจะคืนค่าจำนวนจริง NS เสียงก้อง คำสั่งพิมพ์ผลลัพธ์ไปยังเอาต์พุตมาตรฐาน
ไวยากรณ์ทางเลือกสำหรับเลขคณิต
Backticks (back single quotes) สามารถใช้เพื่อประเมินนิพจน์ทางคณิตศาสตร์ดังในตัวอย่างนี้:
เสียงสะท้อน `expr $m + 18`
นี่จะเพิ่ม 18 ให้กับค่าของตัวแปร "m" แล้วพิมพ์ผลลัพธ์ออกมา
ในการกำหนดค่าการคำนวณให้กับตัวแปร คุณสามารถใช้เครื่องหมายเท่ากับโดยไม่ต้องเว้นวรรค:
m=`expr $m + 18`
อีกวิธีหนึ่งในการประเมินนิพจน์ทางคณิตศาสตร์คือการใช้วงเล็บคู่ ตัวอย่างเช่น:
(( ม.*=4 ))
สิ่งนี้จะเพิ่มค่าของตัวแปร "m" สี่เท่า
นอกจากการประเมินเลขคณิตแล้ว Bash shell ยังมีโครงสร้างการเขียนโปรแกรมอื่นๆ เช่น for-ลูป, ในขณะที่ลูป, เงื่อนไข, และ ฟังก์ชั่นและรูทีนย่อย.