找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

4465

积分

0

好友

590

主题
发表于 2 小时前 | 查看: 2| 回复: 0

你是否在终端里见过下面这样富有设计感的文本输出?

██████╗ ███████╗██████╗ ██╗███████╗
██╔══██╗██╔════╝██╔══██╗██║██╔════╝
██████╔╝█████╗  ██║  ██║██║█████╗
██╔═══╝ ██╔══╝  ██║  ██║██║██╔══╝
██║     ███████╗██████╔╝██║███████╗
╚═╝     ╚══════╝╚═════╝ ╚═╝╚══════╝

或者这种:

_  __          _          _
| |/ /___ _   _| |__   ___| |__
| ' // _ \ | | | '_ \ / __| '_ \
| . \  __/ |_| | |_) | (__| | | |
|_|\_\___|\__,_|_.__/ \___|_| |_|

初看是否有些惊艳?关键在于——这并非图片,也不是前端特效,而是纯正的终端文本输出!只需要一行简单的命令即可生成,例如:

[root@k8s-master01 ~]# figlet Kubernetes
 _  __     _                          _
| |/ /   _| |__   ___ _ __ _ __   ___| |_ ___  ___
| ' / | | | '_ \ / _ \ '__| '_ \ / _ \ __/ _ \/ __|
| . \ |_| | |_) |  __/ |  | | | |  __/ ||  __/\__ \
|_|\_\__,_|_.__/ \___|_|  |_| |_|\___|\__\___||___/

[root@k8s-master01 ~]# figlet dinginx
     _ _             _
  __| (_)_ __   __ _(_)_ __ __  __
 / _` | | '_ \ / _` | | '_ \\ \/ /
| (_| | | | | | (_| | | | | | >  <
 \__,_|_|_| |_|\__, |_|_| |_/_/\_/
               |___/

什么是 Figlet?

FIGlet 是一款经典且实用的终端工具,其核心功能是将普通文本转换为风格多样的 ASCII 艺术字。它支持多种预设字体,非常适合应用在 Shell 脚本、CI/CD 流程、登录欢迎语以及各类 DevOps 场景中。

简单来说,Figlet 能让你枯燥的命令行界面变得生动而富有表现力,让你的终端从“能用”进化到“有灵魂”

安装 Figlet

在不同操作系统上的安装命令非常简单。

CentOS / Rocky / AlmaLinux:

yum install -y figlet

Ubuntu / Debian:

apt install -y figlet

macOS:

brew install figlet

基础使用入门

安装完成后,就可以立即开始使用。最基本的命令格式是 figlet 后接想要转换的文本。

figlet Hello

输出效果如下:

 _   _      _ _
| | | | ___| | | ___
| |_| |/ _ \ | |/ _ \
|  _  |  __/ | | (_) |
|_| |_|\___|_|_|\___/

如果要转换的文本包含空格,记得用引号包裹:

figlet "welcome to dinginx's website"

进阶玩法:让终端输出更出彩

1. 指定不同字体

Figlet 内置了多种字体,使用 -f 参数可以指定。

[root@k8s-master01 ~]# figlet -f slant DevOps
    ____            ____
   / __ \___   __/ __ \____  _____
  / / / / _ \ | / / / / __ \/ ___/
 / /_/ /  __/ |/ / /_/ / /_/ (__  )
/_____/\___/|___/\____/ .___/____/
                     /_/
[root@k8s-master01 ~]# figlet -f big Redis
 _____          _ _
|  __ \        | (_)
| |__) |___  __| |_ ___
|  _  // _ \/ _` | / __|
| | \ \  __/ (_| | \__ \
|_|  \_\___|\__,_|_|___/
[root@k8s-master01 ~]# figlet -f standard Kubernetes
 _  __     _                          _
| |/ /   _| |__   ___ _ __ _ __   ___| |_ ___  ___
| ' / | | | '_ \ / _ \ '__| '_ \ / _ \ __/ _ \/ __|
| . \ |_| | |_) |  __/ |  | | | |  __/ ||  __/\__ \
|_|\_\__,_|_.__/ \___|_|  |_| |_|\___|\__\___||___/

2. 查看所有可用字体

使用 showfigfonts 命令可以列出系统内所有可用的字体及其预览。

[root@k8s-master01 ~]# showfigfonts
banner :

#####    ##   #    # #    # ###### #####
#    #  #  #  ##   # ##   # #      #    #
#####  #    # # #  # # #  # #####  #    #
#    # ###### #  # # #  # # #      #####
#    # #    # #   ## #   ## #      #   #
#####  #    # #    # #    # ###### #    #

big :
 _     _
| |   (_)
| |__  _  __ _
| '_ \| |/ _` |
| |_) | | (_| |
|_.__/|_|\__, |
          __/ |
         |___/

... (更多字体预览)

3. 居中显示

使用 -c 参数可以让艺术字在终端中居中显示,这在编写脚本时非常实用。

figlet -c Welcome

4. 控制输出宽度

通过 -w 参数可以指定输出宽度(字符数),以适应不同尺寸的终端窗口。

figlet -w 100 HelloWorld

在脚本中的应用:提升可读性与仪式感

将 Figlet 应用于自动化脚本中,可以显著提升关键信息的可读性和视觉层次。

场景一:脚本启动横幅 (Banner)

在脚本开头输出一个醒目的标题,明确指示当前任务。

[root@k8s-master01 ~]# figlet -f slant "K8s Deploy"
echo "Starting deployment..."
    __ ______          ____             __
   / //_( __ )_____   / __ \___  ____  / /___  __  __
  / ,< / __  / ___/  / / / / _ \/ __ \/ / __ \/ / / /
 / /| / /_/ (__  )  / /_/ /  __/ /_/ / / /_/ / /_/ /
/_/ |_\____/____/  /_____/\___/ .___/_/\____/\__, /
                             /_/            /____/
Starting deployment...

场景二:CI/CD 流程输出

在 Jenkins 或 GitLab CI 等CI/CD Pipeline的构建脚本中,使用 Figlet 来高亮显示构建结果,让人一目了然。

[root@k8s-master01 ~]# figlet "Build Success"
 ____        _ _     _   ____
| __ ) _   _(_) | __| | / ___| _   _  ___ ___ ___  ___ ___
|  _ \| | | | | |/ _` | \___ \| | | |/ __/ __/ _ \/ __/ __|
| |_) | |_| | | | (_| |  ___) | |_| | (_| (_|  __/\__ \__ \
|____/ \__,_|_|_|\__,_| |____/ \__,_|\___\___\___||___/___/

场景三:服务器登录欢迎语

编辑 /etc/profile 或对应用户的 ~/.bashrc 文件,加入 Figlet 命令,让每次登录服务器都充满仪式感。

# 在文件末尾添加
figlet "Welcome to K8s Master"

进阶组合:生成彩色 ASCII 艺术字

想要更炫酷的效果?可以搭配 lolcat 工具,为 Figlet 的输出加上彩虹渐变色彩。

figlet Kubernetes | lolcat

注意:使用前需先安装 lolcat 工具。

# Ubuntu/Debian 系统安装命令
apt install -y lolcat

结合后,你就能在终端中看到彩色的 ASCII 艺术字,视觉效果直接拉满。

实用建议与适用场景

Figlet 并非核心的生产力工具,但它能在以下场景中极大地提升工作体验和输出可读性:

  • Shell 脚本
  • CI/CD 流水线
  • Kubernetes 运维脚本
  • 系统登录欢迎语 (Banner)
  • 演示文稿或教程示例

关键在于将其用在“关键输出节点”上,而不是为了装饰而装饰。例如,在脚本的关键步骤处输出状态:

figlet "ERROR"
figlet "SUCCESS"
figlet "DEPLOYING"

这样做能让日志信息更有层次感,运维人员在排查问题时也能更快地定位关键事件,从而间接提升工作效率。

总结

总而言之,Figlet 是一个简单却充满趣味的小工具,它能让你的命令行环境和自动化脚本摆脱枯燥的纯文本输出,增添一份独特的“仪式感”。花几分钟掌握它,或许就能为你日复一日的运维和开发工作带来一点新鲜感。如果你有更多关于脚本编写或 DevOps 实践的奇思妙想,欢迎到云栈社区的开发者板块交流分享。




上一篇:10个被低估但实用的Web API:从深拷贝到文件系统访问
下一篇:C++内存分区详解:堆栈核心区别与内存泄漏实战
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-20 14:56 , Processed in 0.756198 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表