菜鳥的Linux苦逼之路5 bash指令碼程式設計之三

2021-07-16 02:59:56 字數 1472 閱讀 4503

使用指令碼選項及組合條件測試

如何實現組合條件測試

先來回顧一下我們shell指令碼都有哪些條件測試

->整數測試:

-eq:等於

-ne:不等於

-gt:大於

-lt:小於

-ge:大於等於

-le:小於等於

->字元測試:

==:等於

!=:不等於

>:大於

<:>

-n string:測試指定字串是否為空,空則為真,不空則為假。

-s string:測試指定字串是否為不空,不空則為真,空則為假。

->檔案測試:

-e:測試檔案是否存在

-f:測試指定檔案是否為普通檔案

-d:測試指定檔案是否為目錄

-r:測試當前使用者對檔案是否有讀許可權

-w:測試當前使用者對檔案是否有寫許可權

-x:測試當前使用者對檔案是否有執行許可權

組合測試條件

->-a:邏輯與關係

->-o:邏輯或關係

->! :邏輯非關係

eg:if [ $# -gt 1 -a $# -le 3 ] = if [ $# -gt 1 ] && [ $# -le 3 ]    

賦值表示式:

讓乙個變數在原有基礎上加上乙個數後在儲存回原有變數的儲存空間的方法。

let sum=$sum + $x

let i+=1相當於let i++

let i-=1相當於let i--

let i*=1相當於let i=$i*1

let i/=1相當於let i=$i/1

let i%=1相當於let i=$i%1

練習:寫乙個指令碼,要求

接收使用者的兩個引數:

如果使用者輸入的引數為--add或-a,則新增其後使用者自定義的使用者名稱

如果使用者輸入的引數為--del或-d,則刪除其後使用者自定義的使用者名稱

還得支援--help功能。

指令碼內容:

指令碼執行結果:

練習:寫乙個指令碼,要求

計算100以內所有奇數的和以及所有偶數的和,並顯示出來。

指令碼內容:

指令碼執行結果:

本文出自 「菜鳥的技術文件」 部落格,請務必保留此出處

我的linux菜鳥之路2

發現昨天寫的學習內容像是小學時候寫的流水賬,而且沒有層次感,這次換一種寫法。總結一下今天學到的命令 1.su 這個命令是用來公升級使用者的許可權,普通使用者通過密碼就能將許可權提公升為root 2.ls al ls就是list的縮寫,用於顯示檔案的檔名與相關屬性,選項 al就是列出檔案詳細的許可權和...

我的linux菜鳥之路3

進行看書學習了與檔案與目錄管理有關的若干命令,感嘆一下,真是多,一遍看下來記不住幾個。代表此層目錄 代表上一層目錄 代表前乙個工作目錄 代表當前使用者所在的家目錄 account 代表account這個使用者的家目錄 account是個賬號名稱 1.cd命令 變換目錄的指令,change direc...

菜鳥深度學習的逆襲之路 day5

乙個session可能會擁有一些資源,例如variable或者queue。當我們不再需要該session的時候,需要將這些資源進行釋放。有兩種方式,呼叫session.close 方法 使用with tf.session 建立上下文 context 來執行,當上下文退出時自動釋放。總結一下,記得初始...