Bash 中的引數替換

Yahya Irmak 2023年1月30日
  1. 在 Linux Bash 中使用引數替換
  2. 從 Bash 中的字串中刪除表示式
  3. 在 Bash 中替換字串中的表示式
Bash 中的引數替換

有時我們可能想從字串中刪除一個值或用一個新值替換它。有許多不同的方法可以做到這一點。

本文將解釋如何為此目的使用 Linux Bash 指令碼中的引數替換方法。

在 Linux Bash 中使用引數替換

Bash 引數替換是從字串中刪除或替換值的絕佳方法。本文的其餘部分將解釋我們如何通過示例來完成它們。

以下字串將用於示例。

str="one two three two one"

從 Bash 中的字串中刪除表示式

有兩種方法可以使用引數替換從字串中刪除表示式。

${string%expression} 命令刪除 string 末尾的 expression。在下面的示例中,str 中的最後一個 one 將被刪除。

echo "${str%one}"

${string#expression} 命令刪除 string 開頭的 expression。在下面的例子中,str 中的第一個 one 將被刪除。

echo "${str#one}"

從字串中刪除表示式

在 Bash 中替換字串中的表示式

${string/expression/value} 命令將它在 string 中找到的第一個 expression 替換為 value。在下面的示例中,str 中的第一個 one 將被替換為 four

echo "${str/one/four}"

${string//expression/value} 命令將它在 string 中找到的所有 expression 替換為 value。在以下示例中,str 中的所有 one 單詞都將替換為 four

echo "${str//one/four}"

${string/#expression/value} 命令將 string 開頭的 expression 替換為 value。在下面的示例中,str 中的第一個 one 將被替換為 four

echo "${str/#one/four}"

${string/%expression/value} 命令將 string 末尾的 expression 替換為 value。在以下示例中,str 中的最後一個 one 將替換為 four

echo "${str/%one/four}"

替換字串中的表示式

作者: Yahya Irmak
Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn