溫馨提示×

linux envsubst怎樣進(jìn)行批量替換

小樊
81
2024-09-21 19:17:43

envsubst 是一個 Linux 命令行工具,用于在文本文件中替換環(huán)境變量

  1. 創(chuàng)建一個包含環(huán)境變量的文件。例如,創(chuàng)建一個名為 template.sh 的文件,其中包含以下內(nèi)容:
#!/bin/bash
echo "Hello, $NAME!"
echo "Today is $DAY."
  1. 在文件的第一行添加 #!/bin/bash,以使其可執(zhí)行。

  2. 為模板中的環(huán)境變量添加占位符。在這個例子中,我們使用 $NAME$DAY 作為占位符。

  3. 創(chuàng)建一個包含實(shí)際值的文件。例如,創(chuàng)建一個名為 values.txt 的文件,其中包含以下內(nèi)容:

NAME=John
DAY=Monday
  1. 使用 envsubst 命令替換模板中的環(huán)境變量。運(yùn)行以下命令:
envsubst < values.txt > output.sh

這將使用 values.txt 文件中的值替換 template.sh 文件中的環(huán)境變量,并將結(jié)果保存到名為 output.sh 的新文件中。

  1. 檢查 output.sh 文件的內(nèi)容,確保環(huán)境變量已被正確替換:
cat output.sh

輸出應(yīng)如下所示:

#!/bin/bash
echo "Hello, John!"
echo "Today is Monday."

現(xiàn)在,output.sh 文件包含已替換環(huán)境變量的腳本,可以像普通腳本一樣運(yùn)行。

0