Bash дахь арифметик

Тооцоололтыг Bash скриптэд хэрхэн нэмэх вэ

Хэдийгээр Bash нь скрипт хэл боловч ерөнхий зориулалтын програмчлалын хэлний бүх боломжуудтай байдаг. Үүнд арифметикийн функцууд багтана. Үзүүлэнгийн арифметик үнэлгээ хийхийн тулд хэд хэдэн синтаксын тохируулгууд байдаг. Магадгүй хамгийн их уншигдах нь магадгүй зөвшөөрөгдсөн тушаал юм. Жишээлбэл

"m = 4 * 1024"

нь 1024 удаа 4 удаа тооцоолж үр дүнг "m" хувьсагчид оноож өгнө.

Та echo мэдэгдэл нэмэх замаар үр дүнг хэвлэж болно:

"m = 4 * 1024" echo $ m гэж зөвшөөр

Та дараах тушаалыг оруулаад тушаалын мөрөөс шалгаж болно:

"m = 4 * 1024"; $ ц м

Та мөн Bash тушаал агуулсан файл үүсгэж болох бөгөөд ингэснээр та кодыг ажиллуулах ёстой програмыг зааж өгч байгаа файлын дээд хэсэгт мөр нэмнэ. Жишээлбэл:

#! / bin / bash "m = 4 * 1024" echo $ m байна

Bash-г ажиллуулах боломжтой гэж тооцсон бол / bin / bash -д байрлах болно. Та мөн скрипт файлаа ажиллуулах боломжтой байхаар тохируулах хэрэгтэй. Скриптийн файлын нэрийг script1.sh гэж үзээд файлын гүйцэтгэгдэж буй файлыг дараах тушаалаар зөвшөөрч болох юм:

chmod 777 script1.sh

Үүний дараа дараах тушаалыг ажиллуулж болно:

./script1.sh

Боломжит арифметик ажиллагаа нь Java, C гэх мэт стандарт програмчлалын хэлтэй адил төстэй байдаг. Дээр үзүүлсэн шиг үржүүлэхийн гадна та нэмэлт:

"m = a + 7"

эсвэл хасах:

"m = a - 7"

буюу хэлтэс:

"m = a / 2"

эсвэл modulo (үлдэгдэл хуваалтын дараа үлдсэн хэсэг):

"m = a% 100"

Үр дүнг хуваарилж буй ижил хувьсагч дээр үйлдэл хийх үед стандарт арифметик түргэн бичгийг оновчтой хуваарилах операторыг ашиглаж болно, бас нийлмэл даалгаврын оператор гэж нэрлэдэг. Жишээ нь:

"m + = 15"

Энэ нь "m = m + 15" тэнцүү юм. Бид хасахын тулд:

"m - = 3"

Энэ нь "m = m - 3" тэнцүү юм. Бидэнд хуваахын тулд:

"m / = 5"

Энэ нь "m = m / 5" тэнцүү юм. Модульд зориулж:

"m% = 10"

Энэ нь "m = m% 10" тэнцүү юм.

Нэмэлт хэмжээгээр та нэмэгдэл , бууралтын операторуудыг ашиглаж болно:

"m ++"

нь "m = m + 1" -тай тэнцүү. Мөн

"м-"

нь "m = m - 1" -тэй тэнцүү.

Дараа нь "асуултын тэмдэг-цэг" оператор нь тогтоосон нөхцөл нь үнэн, худал эсэхээс хамааран хоёр утгын аль нэгийг буцаана. Жишээлбэл

"k = (m <9)" 0: 1 "

Хэрэв энэ хувьсагчийн баруун гар тал нь "м" хувьсагчийн утга 9-ээс бага байвал "0" гэж үнэлнэ. Үгүй бол энэ нь 1-ийг үнэлнэ. Энэ нь "k" хувьсагч нь "0" өөрөөр хэлбэл "9" -ээс өөр.

Асуулт-тэмдэглэгээний операторын ерөнхий хэлбэр нь:

нөхцөл байдал? утга-if-true: value-if-false

Bash дахь хөвөгч цэг арифметик

Хүлээн авагч нь зөвхөн арифметикийн хувьд ажилладаг. Жишээ нь: GNU bc тооцоолуурыг жишээлбэл хөвөгч цэгийн арифметикийн хувьд хэрэглэж болно:

echo "32.0 + 1.4" | б

"Хоолой" оператор "|" "32.0 + 1.4" арифметик илэрхийлэлийг бодит тоог буцаана. Echo тушаал нь үр дүнг стандарт гаралт руу хэвлэдэг.

Арифметикт зориулсан сонголтын хувилбар

Энэ жишээнд байгаа арифметик илэрхийлэлийг үнэлэхэд нуруу (арын нэг ишлэл) ашиглаж болно:

echo `expr $ m + 18`

Энэ нь "m" хувьсагчийн утгыг 18 болгоод үр дүнг хэвлэнэ.

Хувьсах утгыг тооцоолоход хувьсагчийн хувьд тэнцүү тэмдэг хэрэглэж болно.

m = `expr $ m + 18`

Арифметик илэрхийллийг үнэлэх өөр нэг арга бол давхар хаалтыг ашиглах явдал юм. Жишээлбэл:

((m * = 4))

Энэ нь "m" хувьсагчийн утгыг дөрөв дахин нэмнэ.

Арифметик үнэлгээ хийхээс гадна Bash бүрхүүл нь давталт , нөхцөл байдал , функц, функциональ гэх мэт програмчлалын бүтэцтэй байдаг.