我正在尝试编写一个返回粗体文本的简单bash函数。我到目前为止编写的代码是:
function txt_bold() {<br>
echo -e '\033[1m$1\033[0m$2'<br>
tput sgr0<br>
}
当我写txt_bold "This is bold" "And this in plain text"
时,它会返回“$ 1 $ 2”(粗体1美元)。我在这里做错了什么?
答案 0 :(得分:3)
使用"
代替'
。
function txt_bold() {
echo -e "\033[1m$1\033[0m$2"
tput sgr0
}
在单引号内变量不会扩展。
以下是本文的底线,可能有助于您理解它:What’s the Difference Between Single and Double Quotes in the Bash Shell?