Linux下expr命令用法

2021-09-04 11:17:35 字數 1592 閱讀 1226

expr命令詳解

字串長度

# expr length "this is a test"

14 數字求商數

# expr 14 % 9

5從位置處抓取字串

# expr substr "this is a test" 3 5

is is

數字串 only the first character

# expr index "testforthegame" e

2 字串真實重現

# expr quote thisisatestformela

thisisatestformela

expr命令是乙個手工命令列計數器,用於在unix/linux下求表示式變數的值,一般用於整數值,也可用於字串。

–格式為:

expr expression(命令讀入expression 引數,計算它的值,然後將結果寫入到標準輸出)

–引數應用規則:

用空格隔開每個項;

用 \ (反斜槓) 放在 shell 特定的字元前面;

對包含空格和其他特殊字元的字串要用引號括起來

expr用法例項講解:

(1)計算字串長度

# expr length 「this is a test」

14(2)抓取字串

# expr substr 「this is a test」 3 5

is is

(3)抓取第乙個字元數字串出現的位置

#  expr index 「sarasara」  a

2(4)字串真實重現

# expr quote sara

sara

(5)整數運算

# expr 14 % 9

5# expr 10 + 10

20# expr 1000 + 900

1900

# expr 30 / 3 / 2

5# expr 30 \* 3 (使用乘號時,必須用反斜線遮蔽其特定含義。因為shell可能會誤解顯示星號的意義)

90# expr 30 * 3

expr: syntax error

(6)增量計數

說明:expr在迴圈中用於增量計算。先將變數初始化為0,然後迴圈值加1,反引號的用法為命令替代。

> loop=0

> loop=`expr $loop + 1`

(7)數值測試

說明:用expr測試乙個數。如果試圖計算非整數,則會返回錯誤。

# rr=3.4

# expr $rr + 1

expr: non-numeric argument

# rr=5

# expr $rr + 1

6(8)模式匹配

說明:expr也有模式匹配功能。可以使用expr通過指定冒號選項計算字串中字元數。.*意即任何字元重複0次或多次。

# value=account.doc

# expr $value : 『.*』

8在expr中可以使用字串匹配操作,這裡使用模式抽取.doc檔案附屬名。

$expr $value : 『\(.*\).doc』

accounts 

linux系統中expr命令

1 linux系統中expr命令實現命令列中的四則運算 簡單示例 root linuxprobe test expr 5 3 在命令列中實現加法運算 8 2 中間必須有空格 root linuxprobe test expr 5 3 中間必須有空格 5 3 root linuxprobe test ...

bash shell中expr命令下幾種的使用

expr在linux中是乙個功能非常強大的命令。通過學習做乙個小小的總結。1 計算字串的長度。我們可以用awk中的length s 進行計算。我們也可以用echo中的echo 進行計算,當然也可以expr中的expr length string 求出字串的長度。舉例 root localhost s...

shell 關於expr的用法

關於expr的用法 2004 04 23 15 18 pm 來自 linux文件 現載 www.8s8s.com 我執行了一下,沒有錯啊 你用的是什麼平台?什麼shell?我執行了一下,也沒有錯啊 hp ux ksh 請問 sum和 的值必須是整數嗎?hp ux上提供的ksh不支援陣列,所以sale...