首頁 > 環境與工具程式 > expr

expr: 表達式求值

expr 命令用於評估各種表達式,包括整數運算、字串操作和邏輯運算,並將結果列印到標準輸出。它在 shell 腳本中對於計算變數值或實現條件邏輯非常有用。

概述

expr 命令用於執行算術、關係、邏輯和字串運算。每個參數都被視為單獨的標記,因此在運算符和操作數之間需要空格。

主要特點

  • 算術運算(加、減、乘、除、取餘)
  • 字串運算(長度、子字串、索引、正規表示式匹配)
  • 關係運算(等於、不等於、大於、小於)
  • 邏輯運算(AND、OR)

主要運算符

expr 命令使用各種運算符來評估表達式。每個運算符都應被視為單獨的參數。

算術運算符

關係運算符

邏輯運算符

字串運算符

生成的命令:

請試著組合命令。

這個 Django 應用程序是一個技術指南文檔,旨在為用戶輕鬆解釋 Linux 的各種命令。

`expr` 執行命令。

請將上述選項組合在一起,與 AI 一同虛擬執行命令。

使用範例

基本算術運算

expr 10 + 5

將兩個數字相加。

變數與乘法運算

num=20
expr $num \* 3

使用變數值執行乘法。由於乘法運算符 (*) 在 shell 中具有特殊含義,因此需要進行逸出。

獲取字串長度

expr length "Hello World"

返回給定字串的長度。

提取子字串

expr substr "example" 3 4

從字串 'example' 的第 3 個位置開始提取 4 個字元。

正規表示式匹配與提取

expr "filename.tar.gz" : ".*\.\(tar\.gz\)"

從字串中提取與正規表示式匹配的部分。括號內的內容將作為子匹配返回。

邏輯 AND 運算

expr 5 \& 0

如果兩個操作數均非零,則返回第一個操作數。由於 & 在 shell 中用於背景執行,因此需要進行逸出。

提示與注意事項

使用 expr 時的注意事項和有用提示。

主要注意事項

  • **必須有空格**:運算符和操作數之間必須有空格。
  • **逸出**:在 shell 中具有特殊含義的字元(例如 `*`, `(`, `)`, `&`, `|`, `<` 等)需要用反斜杠 (`\`) 進行逸出或用引號括起來。
  • **整數運算**:`expr` 預設僅支援整數運算。如果需要浮點數運算,則應使用 `bc` 等其他工具。
  • **儲存結果**:`expr` 的結果會輸出到標準輸出,因此要將其儲存到 shell 變數中,需要使用命令替換(例如 `result=$(expr 10 + 5)` 或 `result=`expr 10 + 5``)。

相同類別命令