1.shell 颜色控制
#!/bin/bash
# 字体颜色
# 重置=0
# 黑色=30
# 红色=31
# 绿色=32
# ***=33
# 蓝色=34
# 洋红=35
# 青色=36
# 白色=37.
# 背景颜色
# 重置=0
# 黑色=40
# 红色=41
# 绿色=42
# ***=43
# 蓝色=44
# 洋红=45
# 青色=46
# 白色=47
# 前景色(文字颜色): echo -e "\e[${num}m有颜色的文字"
# 39默认前景色 30黑色 31红色 32绿色 33黄色 34蓝色 35品红 36青色 37浅灰
# 90深灰色 91红灯 92浅绿色 93淡黄色 94浅蓝 95浅洋红色 96浅青色 97白色
# 背景色: echo -e "\e[$(num)m有背景颜色的文字"
# 49默认背景颜色 40黑色 41红色 42绿色 43黄色 44蓝色 45品红 46青色 47浅灰
# 100深灰色 101红灯 102浅绿色 103淡黄色 104浅蓝 105浅洋红色 106浅青色 107白色
# 属性:
# \e[0m 关闭所有属性
# \e[1m 设置高亮度
# \e[4m 下划线
# \e[5m 闪烁
# \e[7m 反显
# \e[8m 消隐
# \e[30m -- \e[37m 设置前景色
# \e[40m -- \e[47m 设置背景色
# \e[nA 光标上移n行
# \e[nB 光标下移n行
# \e[nC 光标右移n行
# \e[nD 光标左移n行
# \e[y;xH 设置光标位置
# \e[2J 清屏
# \e[K 清除从光标到行尾的内容
# \e[s 保存光标位置
# \e[u 恢复光标位置
# \e[?25l 隐藏光标
# \e[?25h 显示光标
# 属性示例:
# 1 粗体高亮 echo -e "\e[1mBold"
# 2 变暗 echo -e "\e[2mDim"
# 4 下划线 echo -e "\e[4mUnderlined"
# 5 闪烁 echo -e "\e[5mBlink"
# 7 反转 (反转前景色和背景色) echo -e "\e[7minverted"
# 8 隐藏(对密码有用) echo -e "\e[8mHidden"
# 结合:
# echo -e "\e[41;32m文字\e[0m" 红色背景绿色字并清除属性
# echo -e "\e[1;3H*\e[0m" 第一行第三列输出一个*
# echo -e "\e[3;3H\e[44;31m*\e[0m" 第三行第三列输出一个蓝色背景红色字
# echo -e "\e[5;31;42m文字\e[0m" 闪烁、红色背景、绿色的文字并清除属性
# echo -e "\e[3;3H\e[5;31;42m*************\e[0m" 第三行第三列输出一排闪烁的星
function init_color() {
# 红色字
echo -ne "\e[31mAAA\e[0m"
# 红色背景
echo -ne "\e[41m \e[0m"
echo -ne "\e[41m\e[34mAAA\e[0m"
# 第三行第二列打印一个A
echo -e "\e[3;2HA\e[0m"
# 第三行第二列打印一个闪烁红色的A
echo -e "\e[3;2H\e[31m\e[5mA\e[0m\e[0m\e[0m"
echo -e "\e[3;2H\e[31m\e[5mA\e[0m"
}
init_color
2.打印棋盘
#!/bin/bash
function print_map() {
for i in {1..8}; do
for j in {1..8}; do
sum=$((i + j))
if [ $((sum % 2)) -eq 0 ]; then
echo -ne "\e[46m \e[0m"
else
echo -ne "\e[47m \e[0m"
fi
done
echo
done
}
print_map