Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >给你的命令行工具加上一个高逼格的banner

给你的命令行工具加上一个高逼格的banner

作者头像
追马
发布于 2020-07-06 08:53:47
发布于 2020-07-06 08:53:47
2.8K00
代码可运行
举报
文章被收录于专栏:一日一工具一日一工具
运行总次数:0
代码可运行

看不懂man page, 小工具来帮你

你在看别人开源的命令行工具的时候,在支持-h或者-v的时候是不是经常看到下面这样的格式输出,你一定是好奇的,这是如何实现的,那今天就带你一块了解下这块的实现。

比如下面这种
再比如下面这种
或者是下面这种
亦或者是下面这种

不得不提的figlet

什么是figlet

figlet是一个可以生成ASCII Art字体工具,在编写一些CLI工具的时候可以作为banner,支持很多字形,对于终端展示十分炫(zhuang)酷(bi)。

安装

其实figlet支持的安装方式很多很多,比如pip, npm, brew等安装方式,今天我们主要来讲解下pip的安装方式,原因是因为安装完不单单可以作为命令行工具使用,还可以在你的Python程序里导入使用。

pip安装
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install pyfiglet
brew安装
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
brew install figlet
npm安装
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm install figlet

命令行使用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> pyfiglet -f Banner3 z h u i m a
########    ##     ##    ##     ##    ####    ##     ##       ###
     ##     ##     ##    ##     ##     ##     ###   ###      ## ##
    ##      ##     ##    ##     ##     ##     #### ####     ##   ##
   ##       #########    ##     ##     ##     ## ### ##    ##     ##
  ##        ##     ##    ##     ##     ##     ##     ##    #########
 ##         ##     ##    ##     ##     ##     ##     ##    ##     ##
########    ##     ##     #######     ####    ##     ##    ##     ##


>

程序里使用

代码程序
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# -*- coding: utf-8 -*-
# __Author__ = "zhuima"


from __future__ import absolute_import, unicode_literals

from pyfiglet import figlet_format
import six

try:
    import colorama

    colorama.init()
except ImportError:
    colorama = None

try:
    from termcolor import colored
except ImportError:
    colored = None


def log(string, color, font="Banner3", figlet=False):
    if colored:
        if not figlet:
            six.print_(colored(string, color))
        else:
            six.print_(colored(figlet_format(string, font=font), color))
    else:
        six.print_(string)


log("\nZ H U I M A", color="blue", figlet=True)
效果展示
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制

> python test-figlet.py
########    ##     ##    ##     ##    ####    ##     ##       ###
     ##     ##     ##    ##     ##     ##     ###   ###      ## ##
    ##      ##     ##    ##     ##     ##     #### ####     ##   ##
   ##       #########    ##     ##     ##     ## ### ##    ##     ##
  ##        ##     ##    ##     ##     ##     ##     ##    #########
 ##         ##     ##    ##     ##     ##     ##     ##    ##     ##
########    ##     ##     #######     ####    ##     ##    ##     ##

> 

相关站点

github地址[1]

figlet.org[2]

在线生成[3]

总结

通过上面的简单的示例,这下终于知道酷炫的banner是如何实现的吧,快在你的下一个程序里用起来吧,保证逼格满满,瞬间高大上。

引用链接

[1] github地址: https://github.com/pwaller/pyfiglet [2] figlet.org: http://www.figlet.org/ [3] 在线生成: http://patorjk.com/software/taag

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 链上追马 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
给你的命令行工具加上一个高逼格的banner
figlet是一個可以生成ASCII Art字体工具,在编写一些CLI工具的时候可以作为banner,支持很多字形,对于终端展示十分炫(zhuang)酷(bi)。
追马
2020/06/30
2.6K0
给你的命令行工具加上一个高逼格的banner
同事直呼666!小姐姐仅用3行代码就能玩出花来
相信Java程序员看到上面的图,一定不会陌生。没错,springboot的启动日志。不知道其他人怎么想,我第一次看到这个启动日志的时候,就觉得好炫酷。然而,大家在日常的Python开发中,日志打印的却枯燥无比。今天就来教大家打印出让同事羡慕,却让领导崩溃的代码输出。
吴延宝
2020/09/28
7450
同事直呼666!小姐姐仅用3行代码就能玩出花来
【云原生工具集】洋气·给程序自定义启动图案
通过我们在启动spring项目或者其他中间件和小工具的时候,会遇到输出一些有意思的图案,于是也挺好奇这些是如何制作的,于是在网上找到了以下几种实现的工具以及网站可以直接制作,然后在程序启动的时候打印出来这些字符。整理一下分享给大家。
公众号: 云原生生态圈
2021/04/02
5030
springboot服务和python服务自定义启动banner
shigen最近在修改ruoyi的框架,看到了框架自带的banner图,就是一个不爽,于是动手整改了一下。先来看下效果:
shigen
2023/11/16
2680
springboot服务和python服务自定义启动banner
为你的命令行工具添加牛逼哄哄的进度条
•自己使用time和sys模块结合循环实现•PyPrind[1] 526 star, 许久不更新了•python-progressbar[2] 353 star, 许久不更新了•progress[3] 850 star, 最后一次更新12个月前•tqdm[4] 14.8k star, 截止写文档还在更新•alive_progress[5] 610 star, 持续更新中•rich[6] 7k star, 持续更新中•rich并不单单局限于进度条,这是一个功能强大的命令行辅助,官方介绍: Rich is a Python library for rich text and beautiful formatting in the terminal•click_spinner[7] 157 star, 3个月前最后一次更新
追马
2020/07/03
1.5K0
python命令行or控制台or日志带有颜色的输出
在几年前,我写过一个项目,喜欢花里胡哨的我看到别人输出到控制台带有颜色,于是我也想要。
梦无矶小仔
2023/08/03
1.1K0
python命令行or控制台or日志带有颜色的输出
实用的Mac命令行工具
iTerm2 - 免费的终端工具,直接替代自带的 Terminal,有非常多惊人的特性。
louiezhou001
2019/09/03
4.3K0
19 个高逼格 Linux 命令,赶紧拿去用!
输出一句话,有笑话,名言什么的 (还有唐诗宋词sudo apt-get install fortune-zh)
Java技术栈
2021/11/12
4960
使用fire打造你自己的命令行工具
今天我的朋友小黄咨询我关于命令行的问题。他觉得他们团队的部署小组开发的命令行工具特别好用,可以用来部署环境,升级环境,检查环境等。他很好奇这到底是怎么做的。处于好奇,我们今天就一起来用 Python 写一个专属于我们自己的命令行工具。
Python研究所
2022/06/17
4530
使用fire打造你自己的命令行工具
(四)FFmpeg 命令行工具fftools
很多读者可能会问,我们是做移动端的开发,为什么要学习FFmpeg 命令行工具?其实客户端是可以直接调用FFmpeg 命令行工具实现具体功能,而不需要去深入了解FFmpeg的具体方法。我们先基于Mac使用FFmpeg 命令行工具体验功能。
sweet说好的幸福
2020/12/23
1.8K0
(四)FFmpeg 命令行工具fftools
Python click——命令行工具
我们的游戏资源处理工具是python实现的,功能包括csv解析,UI材质处理,动画资源解析、批处理,Androd&iOS自动打包等功能。
py3study
2020/01/10
1.7K0
Python click——命令行工具
使用 Node,如何制作一个专业的命令行工具?
大家好,我是山月,最近做了一款小命令行工具 markdown,借机分享下在 Node 中如何制作一个命令行工具。
童欧巴
2021/08/20
1.9K0
使用 Node,如何制作一个专业的命令行工具?
如何发布一个Python命令行工具
上次写的一个终端里面斗鱼TV弹幕Python版本和Ruby版本,并且发布到PIP和RubyGems上面.在发布PIP包的时候,居然Google不到一篇可以非常好的讲解这个流程的文章.于是整理这篇文章,并且方便后来自己检索,并且方便他人找资料. 自推荐下依照本文定制的命令行工具danmu.fm的github地址: https://github.com/twocucao/danmu.fm 本文的目的也是非常简单: 写一个Python命令行工具,并且发布到PIP上面.并且在这个过程中给出我自己的一些思考. 如何分
CDA数据分析师
2018/02/05
1.7K0
如何发布一个Python命令行工具
Rust从零实现一个命令行端口扫描工具
按照惯例,还是和之前实现的文本编辑器一样,我给这个工具起名为X-SCAN,它的功能很简单,通过命令行参数的方式对指定IP进行扫描,扫描结束之后返回该IP地址中处于开放状态的端口号,学完本文,你将自己实现一个如下效果的端口扫描工具(截图以CSDN平台的IP地址的扫描结果为例)
堆栈哲学
2024/06/07
2690
Rust从零实现一个命令行端口扫描工具
最近发现的4个Python命令行可视化库,太酷了!
分别是Bashplotlib、tqdm、PrettyTable、Colorama。
小F
2021/06/25
1.2K0
最近发现的4个Python命令行可视化库,太酷了!
GitHub日收12000星,六个命令行工具引爆程序员圈!
我不知道我是怎么认识Broot的,但它很实用。当你打开一个小目录,并想要查看land的位置,那么tree功能可以优秀地完成这点。
浩说编程
2021/08/16
6100
GitHub日收12000星,六个命令行工具引爆程序员圈!
是时候拥有一个你自己的命令行工具了
本篇博客主要介绍了如何使用commander, inquirer以及chalk从零开始,创建属于自己的命令行工具。
SH的全栈笔记
2019/10/21
9340
手摸手教你撸一个代码检测命令行工具(CLI)
大家在做前端开发的时候,为了保证团队成员提交代码的质量,一般都会对代码进行代码质量检查和代码美化工作,通常的做法是进行一系列的配置,借助于 eslint、prettier、lint-staged、husky 等工具实现代码的检测工作。但是这个过程涉及众多,配置起来也很繁琐,而且针对不同的项目都需要进行重复配置,无疑增加了大家的工作量,那么我要解决的就是这个问题,提供一个命令行工具来封装上述检测工具,简化配置步骤。
astonishqft
2022/05/10
1.4K0
手摸手教你撸一个代码检测命令行工具(CLI)
这个命令行HTTP工具好用而且漂亮
cURL相信很多做开发的、运维的都不陌生,是非常有用的一个终端请求工具,借助于它可以在命令行中进行HTTP、FTP等请求,在Linux系统中应用非常广泛。但是它目前有一个缺陷,语法复杂,上手难度挺高,甚至目前还不直接支持JSON参数请求。胖哥最近发现了另一个类似的工具httpie,非常简单的一个HTTP命令行客户端,甚至有点酷炫。
码农小胖哥
2022/02/11
6200
这个命令行HTTP工具好用而且漂亮
图片处理及上传命令行工具 —— PICTL
  自从博客从 WordPress 转到静态博客(先 Hexo 后 Jekyll)之后,文章的图片处理、图片上传就成了一个不大顺畅的事情。最先是使用了 vgy.me 提供的免费图床,支持直接从剪切板上传,操作上相对比较简单,也不需要任何本地存储。不过后来 vgy.me 进行了升级改版,原先的剪切板上传功能也不再支持了,偶尔还出现图片像素被降低、丢失的问题。同时,考虑到 WebP 格式可能会适合博客使用,而 vgy.me 还不支持该格式。于是开始切换到 “对象存储 + CDN” 的方案。本地准备好的 PNG 格式图片,先通过 cwebp 命令行转成 WebP 格式图片,再通过 uPic 工具修改文件名后上传到对象存储。由于此前采用的是腾讯云的 COS 对象存储和 CDN,经常面临着 SSL 证书更新等琐碎的事情。这样一来,整体的效率实际上并不高,只能说勉强接受。
zhonger
2023/06/18
5620
图片处理及上传命令行工具 —— PICTL
推荐阅读
相关推荐
给你的命令行工具加上一个高逼格的banner
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验