
- Unix/Linux 初學者教程
- Unix/Linux - 首頁
- Unix/Linux - 什麼是 Linux?
- Unix/Linux - 入門指南
- Unix/Linux - 檔案管理
- Unix/Linux - 目錄
- Unix/Linux - 檔案許可權
- Unix/Linux - 環境
- Unix/Linux - 基本實用程式
- Unix/Linux - 管道和過濾器
- Unix/Linux - 程序
- Unix/Linux - 通訊
- Unix/Linux - vi 編輯器
- Unix/Linux Shell 程式設計
- Unix/Linux - Shell 指令碼
- Unix/Linux - 什麼是 Shell?
- Unix/Linux - 使用變數
- Unix/Linux - 特殊變數
- Unix/Linux - 使用陣列
- Unix/Linux - 基本運算子
- Unix/Linux - 決策
- Unix/Linux - Shell 迴圈
- Unix/Linux - 迴圈控制
- Unix/Linux - Shell 替換
- Unix/Linux - 引號機制
- Unix/Linux - I/O 重定向
- Unix/Linux - Shell 函式
- Unix/Linux - 手冊頁幫助
- 高階 Unix/Linux
- Unix/Linux - 標準 I/O 流
- Unix/Linux - 檔案連結
- Unix/Linux - 正則表示式
- Unix/Linux - 檔案系統基礎
- Unix/Linux - 使用者管理
- Unix/Linux - 系統性能
- Unix/Linux - 系統日誌
- Unix/Linux - 訊號和陷阱
Unix/Linux - Shell 字串運算子示例
以下字串運算子受 Bourne Shell 支援。
假設變數a儲存“abc”,變數b儲存“efg”,則 -
運算子 | 描述 | 示例 |
---|---|---|
= | 檢查兩個運算元的值是否相等;如果相等,則條件為真。 | [ $a = $b ] 不為真。 |
!= | 檢查兩個運算元的值是否相等;如果值不相等,則條件為真。 | [ $a != $b ] 為真。 |
-z | 檢查給定字串運算元的大小是否為零;如果長度為零,則返回真。 | [ -z $a ] 不為真。 |
-n | 檢查給定字串運算元的大小是否不為零;如果長度不為零,則返回真。 | [ -n $a ] 不為假。 |
str | 檢查str是否不是空字串;如果為空,則返回假。 | [ $a ] 不為假。 |
示例
以下是一個使用所有字串運算子的示例 -
#!/bin/sh a="abc" b="efg" if [ $a = $b ] then echo "$a = $b : a is equal to b" else echo "$a = $b: a is not equal to b" fi if [ $a != $b ] then echo "$a != $b : a is not equal to b" else echo "$a != $b: a is equal to b" fi if [ -z $a ] then echo "-z $a : string length is zero" else echo "-z $a : string length is not zero" fi if [ -n $a ] then echo "-n $a : string length is not zero" else echo "-n $a : string length is zero" fi if [ $a ] then echo "$a : string is not empty" else echo "$a : string is empty" fi
以上指令碼將生成以下結果 -
abc = efg: a is not equal to b abc != efg : a is not equal to b -z abc : string length is not zero -n abc : string length is not zero abc : string is not empty
使用運算子時需要考慮以下幾點 -
運算子和表示式之間必須有空格。例如,2+2 不正確。應寫成 2 + 2。
if...then...else...fi 語句是決策語句,將在下一章中解釋。
unix-basic-operators.htm
廣告