3、##上面簡單的三個小例項是shell條件測試中的字元測試
-eq: 測試兩個整數是否相等;比如 $a -eq $b
-ne: 測試兩個整數是否不等;不等,為真;相等,為假;
-gt: 測試乙個數是否大於另乙個數;大於,為真;否則,為假;
-lt: 測試乙個數是否小於另乙個數;小於,為真;否則,為假;
-ge: 大於或等於
-le:小於或等於
== : 測試兩個字串是否相等,相等為真,不等為假。
!= : 測試兩個字串是否不等,不等為真,相等為假。
-n string : 測試指定的字串是否為空,空為真,不空為假。
-z string :測試指定的字串是否為不空,不空為真,空為假。
< 小於(需要雙括號),如:(("$a" < "$b"))
<= 小於等於(需要雙括號),如:(("$a" <= "$b"))
> 大於(需要雙括號),如:(("$a" > "$b"))
>= 大於等於(需要雙括號),如:(("$a" >= "$b"))
-e 檔案存在
-f file 是乙個普通檔案
-s 檔案長度不為 0
-d 檔案是個目錄-r 檔案具有讀許可權
-w 檔案具有寫許可權
-x 檔案具有執行許可權
判斷字串test –n 字串 #字串的長度非零
test –z 字串 #字串的長度是否為零
test 字串1=字串2 #字串是否相等,若相等返回true
test 字串1!=字串2 #字串是否不等,若不等反悔false
判斷整數test 整數1 -eq 整數2 #整數相等
test 整數1 -ge 整數2 #整數1大於等於整數2
test 整數1 -gt 整數2 #整數1大於整數2
test 整數1 -le 整數2 #整數1小於等於整數2
test 整數1 -lt 整數2 #整數1小於整數2
test 整數1 -ne 整數2 #整數1不等於整數2
檔案判斷test -e 檔案存在
test -f file 是乙個普通檔案
test -s 檔案長度不為 0
test -d 檔案是個目錄-r 檔案具有讀許可權
test -w 檔案具有寫許可權
test -x 檔案具有執行許可權
Linux shell中字串的比較
我想在shell中完成如下的動作 var1 abcd var2 ef,那麼按照c語言 var2大於var1了,可是我看到shell中好象只能檢測這兩個字串是否匹配 而不能比較大小啊 好像是不能比較大小。如果用變通的方式呢,似乎可考慮用sort等命令來組合。麻煩點兒。if var1 echo var1...
linux shell 字串替換
x abcdabcd echo 只替換乙個 bbcdabcd echo 替換所有 bbcdbbcd 舉例 test liu.echo liu 引用 參考 在做shell批處理程式時候,經常會涉及到字串相關操作。有很多命令語句,如 awk,sed都可以做字串各種操作。其實shell內建一系列操作符號,...
linux shell 字串操作
字串簡介 1 大括號用法例項 1 純用法 拓展功能 例如 ls sh touch sh 組織功能 例如 多條命令在當前shell中執行 注意cmd1與用法 取值拓展功能 例如 var dreamer echo way 此條語句輸出dreamerway 替換結構 a,和 若變數var為空,則用在命令列...