shell案例(shell中输出彩色Hello world)

发布于:2024-10-12 ⋅ 阅读:(7) ⋅ 点赞:(0)

Shell中输出彩色Hello world

循环遍历不同的ANSI转义序列代码,展示了各种字体颜色、背景颜色和显示方式的效果,每个部分都包含了一个简单的循环,通过echo -e命令输出带有相应颜色或显示方式的字符串,并在每部分之间输出空行以分割不同的部分

*echo -e 扩展:

[root@localhost shell]# cat 3.sh

#!/bin/bash

# This is a script to demonstrate the use of ANSI escape sequences for text color, background color, and display styles.

# by author rivers 2021.09-23

注释部分说明了脚本的基本功能和作者信息

# 字体颜色 (31-37)

echo "字体颜色 (31-37):"

for i in {31..37}; do

  echo -e "\033[$i;40mHello world! (\033[$i;40m$i\033[0m)\033[0m"

done

echo

解析:

for i in {31..37};do:循环遍历从31到37的数字,这些数字对应不同的前景颜色

31:红色

32:绿色

33:黄色

34:蓝色

35:洋红色

36:青色

37:白色

echo -e "\033[$i;40mHello world! (\033[$i;40m$i\033[0m)\033[0m"

\033[:是ANSI转义序列的开始

$i:是当前的颜色代码

40m:设置背景颜色为黑色

Hello world! (\033[$i;40m$i\033[0m)\033[0m":输出带有颜色的“Hello world”和颜色代码

\033[0m:重复所有属性(包括颜色)

echo:在字体颜色部分结束后输出一个空行

# 背景颜色 (41-47)

echo "背景颜色 (41-47):"

for i in {41..47}; do

  echo -e "\033[37;${i}mHello world! (\033[37;${i}m$i\033[0m)\033[0m"

done

echo

解析:

echo -e "\033[37;${i}mHello world! (\033[37;${i}m$i\033[0m)\033[0m"

37:设置前景颜色为白色

$i:是当前的背景颜色代码

# 显示方式 (1-8)

echo "显示方式 (1-8):"

for i in {1..8}; do

  echo -e "\033[$i;31;40mHello world! (\033[$i;31;40m$i\033[0m)\033[0m"

done

解析:

for i in {1..8}; do:循环遍历从1到8的数字,这些数字对应不同的显示方式

1:高亮/加粗

2:暗淡

3:斜线

4:下划线

5:闪烁

6:反显

7:反转前景和背景

6:隐藏

echo -e "\033[$i;31;40mHello world! (\033[$i;31;40m$i\033[0m)\033[0m"

31:设置前景颜色为红色

40:设置背景颜色为黑色

输出结果