输出颜色
2022/1/9小于 1 分钟格式美化
输出颜色
用法格式
echo -e "\e[1;31;42m $text \e[0m"
编码表
前景色 | 背景色 | 颜色 |
---|---|---|
30 | 40 | 黑色 |
31 | 41 | 红色 |
32 | 42 | 绿色 |
33 | 43 | 黄色 |
34 | 44 | 蓝色 |
35 | 45 | 紫红色 |
36 | 46 | 青蓝色 |
37 | 47 | 白色 |
在XShell上测试的效果
编码 | 效果 |
---|---|
1 | 高亮 |
2 | 没变化,在原生TTY上会变灰 |
3 | 斜体 |
4 | 下划线 |
5 | 闪烁 |
6 | 没变化 |
7 | 颜色用作背景色,前景色变为黑色,在原生TTY上也生效 |
8 | 文字隐藏 |
9 | 删除线 |
改变字符串颜色
#!/bin/bash
function effect_str() {
str=$1
shift
effect_params=$(echo $@ | sed 's/\ /;/g')
result="\e[${effect_params}m${str}\e[0m"
}
effect_str $@
echo -e $result
修改命令提示符的颜色
# 使 ~/.bashrc 加载 ~/.ps1_color
cat >> ~/.bashrc << EOF_import_ps1_color
if [ -f ~/.ps1_color ]; then
source ~/.ps1_color
fi
EOF_import_ps1_color
# 设定 ~/.ps1_color 的内容。根据用户是否为 root,\\$ 是会变化的
cat > ~/.ps1_color << 'EOF_PS1'
user_color='\e[34m'
host_color='\e[34m'
workdir_color='\e[34m'
init_color='\e[0m'
PS1="\n${user_color}\u${init_color}@${host_color}\h${init_color} ${workdir_color}\w${init_color} \\$ \n"
EOF_PS1
source ~/.bashrc