linux expr用法
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 : ’.*’
12
在expr中可以使用字符串匹配操作,這裏使用模式抽取.doc文件附屬名。
$expr $VALUE : ‘.?
$expr $VALUE : ‘(.*).doc‘
這個例子都是匹配了整改文件名,望指點
轉自:http://blog.csdn.net/cbk861110/article/details/18730099
linux expr用法