Bash

獲取spec文件中使用的shell函式的輸出

  • December 15, 2020

嗨,我需要echo從 RPM 規範文件中的函式獲取輸出(通過 生成)。

功能是

get_server_ip() {
       some staff
       echo $nodeip
       return 0
}

它位於我來源的文件中:

source /usr/local/lib/script.sh

如何從腳本內的函式中獲取值並將其用作參數ssh-keygen?我使用 GNU Bash,版本 4.2.46(2)-release (x86_64-redhat-linux-gnu)。

您可以使用命令替換將命令或函式列印的輸出儲存stdout到 shell 變數中:使用

my_value=$(get_server_ip)

在您的腳本中將列印的字元串儲存get_server_ip()到變數my_value中,然後您可以像往常一樣"$my_value"在進一步的腳本程式碼中使用該變數。

如果您從 RPM 規範文件執行它,請務必使用適當的指令將其定義bash為需求(例如,請參見此處)。Requires

引用自:https://unix.stackexchange.com/questions/624561