當前位置:
首頁 > 最新 > shell編程-一些簡單的運算符

shell編程-一些簡單的運算符

每天進步一點點,從量變到質量。

今天講講shell編程中的運算符。學過例如c,java等語言的人可能都知道運算符是啥個東東,也知道如何使用各種運算符。不過,shell的運算符和其他大部分編程語言還是有那麼一點點差別的。不信你往下看。

先說說講的大體內容

算術運算符

關係運算符

有關字元串的運算符

算術運算符

估計可能還有些人不清除啥是算術運算符、啥是關係運算符。說白了算術運算符就是最基本的那些運算符,即加減乘除、取余、賦值(=)等這些基本的、最常用的運算符。

對於shell中數與數之間的運算還是和其他語言有那麼一點區別。例如要你算a=5+10。可能在別的語言中,你直接

就可以了。但是很抱歉,在shell中行不通。如果你這樣寫,在shell中a的值不是15,a的值就是」5+10」這個字元串。

所以我們需要藉助其他命令來實現,如awkexpr這些命令。其中expr算是用的比較多,因此,我們也用expr這個命令來解決數值之間的運算。至於怎麼用,簡單粗暴,直接看程序:

執行腳本的結果

注意點

等號之間不能有空格

表達式expr以及加號+與數值之間要有空格

使用的是反引號`把他們圈起來,而不是單引號。

問題:為啥他們之間要有空格?

考考你。

下面我演示一下加減乘除。

輸出結果

注意點

乘號(*)前邊需要加轉義字元()才行哦。

在MAC中shell的expr語法相當於:$((表達式)),此處表達式中的」*」不需要加轉義字元

關係運算符

關係運算符就是用來比較兩個數之間的大小的。不過需要注意的是,我下面列舉的關係運算符是不支持字元串的,除非字元串的值是數字

常用關係運算符如下:

-eq:判斷是否相等,相等則返回true,否則返回false。下面類似

-nq:判斷是否不相等。

-gt:判斷左邊的數是否大於右邊的。

-lt:判斷左邊的數是否小於右邊的。

-ge:判斷左邊的數是否大於等於右邊

-le:判斷左邊的數是否小於等於右邊。

直接看程序,相信你們看一下就知道如何使用了,這些都挺簡單,沒有什麼好詳細講的。

輸出結果:

我就演示一個,其他類似。

有關字元串的一些運算符

下面列舉一些常用於字元串的運算符

=:判斷兩個字元串是否相等。相等則返回true,否則返回false。注意啊,這個和我們平時用的』==』不一樣哦。

!=:判斷兩個字元串是否不相等。

-z:檢測字元串的長度是否為0。

-n:檢測字元串長度是否不為0。

str:檢測字元串是否為空。

簡單暴力,直接代碼演示,相信聰明的你們一眼就知道怎麼用了

輸出結果:

大家多動手試試勒

好吧,可能要跟大家說聲抱歉。講著講著講的有點粗糙。也有點隨便。本來想好好扯的,還有很多細節很多知識。不過·····不知為啥,就突然內心有點煩躁····居然煩躁那可以留著明天或者之後寫啊。不過雖然是簡單的一點東西,但是寫起來真的很花時間,就不想留了之後寫了。在此要和大家說聲抱歉。也感謝大家的閱讀,希望對你有所幫助勒。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 苦逼的碼農 的精彩文章:

TAG:苦逼的碼農 |