在终端中输出彩色文字
老是忘了,老是忘了,在此记录一下。
先说一下,echo -e 可以输出包含转义序列的字符串,例如:echo -e "a\nb\nc",里面的\n会被解释成换行。
再列出相应的颜色代码:
前景:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37
背景:重置=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,洋红=45,青色=46,白色=47
颜色的格式为:\e[颜色代码m
同时设置前景颜色和背景颜色时将颜色代码用分号(;)隔开。
例如,输出一段绿底红字的文本:
echo -e "\e[1;31;42mThis is red foreground and green background text.\e[0mThis is normal text"
里面的 1 代表加粗。
我们借此把我们的命令提示符改一下颜色,archlinux中可以修改 ~/.bashrc
PS1='\e[1;32m[\u@\h \W]\$\e[0m '
不过改成这样会导致终端模拟器中字符的自动换行出现问题,待解决。
啦啦啦!!!