我编辑了默认设置/etc/update-motd.d/00-header
,添加了一些颜色以使其更易于阅读:
printf "Welcome to \e[1;34m%s\e[0m \e[2m(%s %s %s)\e[0m\n" "$DISTRIB_DESCRIPTION" "$(uname -o)" "$(uname -r)" "$(uname -m)"
我可以在终端中很好地运行该行代码,但是当我00-header
使用此信息进行编辑时,我得到了以明文形式打印的转义代码:
Welcome to \e[1;36mUbuntu 13.10\e[0m \e[2m(GNU/Linux 3.11.0-23-generic i686)\e[0m
如何在当天的留言中添加一点色彩?
您是如何编辑文件的,尤其是不可打印的字符?
—
Volker Siegel 2014年
在本文中,
—
IQAndreas 2014年
pico
我用示例中包含的第一行o代码替换了现有的代码行。问题是MOTD解析器然后将\e
和后续字符视为纯文本,而不是特殊字符。
我确实从链接文件的版权标题中看到您确实在Ubuntu上,所以我添加了相应的标签,因为它与回答有关(关于使用的shell,请参见我的回答)。
—
Volker Siegel