最近在看我主管寫的Source Code時,注意到了一個自己之前沒用過的指令-expr;巧的是,在我的Linux指令辭典裡也沒找到這個指令 (也有可能是我的書籍版本太舊)。於是乎趕緊Google一下,把大概的用法記下來。
expr指令的主要用法,是計算數值和字串處理。例如以下範例:
expr 5 + 2 // 7
expr 5 - 2 // 3
expr 5 \* 2 // 10
expr 5 / 2 // 2
expr 5 % 2 // 1
expr "Hello! World! " // Hello! World!
expr length "Hello! World! " // 14
計算字串長度
expr substr "Hello! World! " 5 6 // o! Wor
找出子字串;從第5個字元開始,取6個字元。
以上的結果如下圖:
這裡有兩點要注意的:
1. 在做數學運算時,數值和運算符號之間要有空格,要不然會被當成字串來處理。
2. 在做乘法運算時,在'*'號前面要多加一個'\'字元;要不然會出現「expr: 語法錯誤。」的錯誤訊息。
除此之外,除了加減乘除餘這五個運算符號,也和C語言一樣,可以做'|', '&', '>=', '<'等位元運算。
細節部份,可查詢man expr。
沒有留言:
張貼留言