如何在 Linux 上使用 sed 替換環境變數?


環境變數是一個動態命名的值。通常,這些變數使用下面顯示的命令在一個終端中匯出

export $SOMEVARIABLE=value

或者它們儲存在 bash 檔案中,以便在原始檔後,在所有終端中都可用。如果我們想更改環境變數,我們可以簡單地更改上面命令的值欄位,然後原始檔,但如果我們想使用**sed**命令來做到這一點,那麼我們需要了解一些關於**sed**命令的資訊。

讓我們探索一下**sed**命令,它是**流編輯器**的縮寫。此命令用於在一個特定檔案上執行不同的功能,如查詢、替換、插入等等。

語法

sed [OPTIONS]... [SCRIPT] [INPUTFILE...]

示例 1

假設我們有一個簡單的文字檔案,我們希望將檔案中存在的字串替換為另一個字串,在這種情況下,我們可以使用 grep 命令。

檔案

immukul@192 linux% cat somefile.txt

this is a test file and it is used for testing and is not available for anything else so
please stop asking, lionel messi

現在我們想在上面的檔案中將字串**“it”**替換為**“litt”**。執行此操作的命令如下所示:

命令

sed ‘s/it/litt’ somefile.txt

輸出

immukul@192 linux% cat somefile.txt

this is a test file and litt is used for testing and is not available for anything else so
please stop asking, lionel messi

現在讓我們看看如何使用**sed**命令在 bash 指令碼中交換環境變數的值。

有一個環境變數**TUTS**,其值等於** /Users**。為了在 bash 指令碼中更改該值,我們可以將這些行新增到指令碼中。

指令碼

sed 's@PPP@'"$TUTS"'@'

現在,如果我們執行上面的指令碼,然後鍵入 PPP,那麼我們將能夠列印環境變數的值,而不是列印 PPP 本身。

輸出

immukul@192 linux-questions-code % ./sss.sh
PPP
/Users

更新於: 2021-07-31

2K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.