【发布时间】:2018-05-09 18:54:34
【问题描述】:
我正在尝试创建以某种颜色打印绑定到变量的消息的函数。消息变量作为此函数的参数传递。问题是我只得到第一个空格的文本(只有消息的第一个字)。我的脚本如下所示:
#!/usr/bash
lbGREEN='\e[1;92m'
NC='\e[0m'
normalMessage="Everything fine"
echo_message() {
echo -e ${lbGREEN}$1${NC}
}
echo_message $normalMessage
我的输出是:
Everything
【问题讨论】:
-
echo_message "$normalMessage",顺便说一句,您是否在#!/usr/bash安装了bash?你是说#!/usr/bin/bash -
除非您有充分的理由不这样做,否则请始终引用您的变量。
-
@Inian 我错了
#!/usr/bash,但结果证明脚本正在运行! -
@s-kaczmarek 如果您使用
bash myScript运行脚本,则忽略shebang。 -
@chepner 是的,我就是这样运行这个脚本的!谢谢,现在我清楚了。
标签: linux bash shell scripting