前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >终端可以是丰富多彩的! echo实用技巧

终端可以是丰富多彩的! echo实用技巧

作者头像
zhaoolee
发布2018-08-10 16:50:06
6560
发布2018-08-10 16:50:06
举报
文章被收录于专栏:木子昭的博客木子昭的博客
  • 当人们提及"print大法好"的时候, 你可以和他们聊一聊echo
  • 在"世界上最好的语言"PHP中, 也使用了echo作为负责打印的函数, 但这次我们要介绍的是Linux shell终端里面的echo
  • 当然, shell中的echo要比php的要更强大一些

实用技巧: echo简化操作

当我们编写脚本, 或者写一些"新手教学"的时候, 经常会用到更改配置文件的情况, 比如在centos7中更换docker国内镜像源, 传统的做法是, 备份旧文件, 然后,vi打开/etc/docker/daemon.json, 输入{"registry-mirrors": ["https://registry.docker-cn.com"]}

如果善用echo,我们可以一行命令搞定echo {"registry-mirrors": ["https://registry.docker-cn.com"]} > /etc/docker/daemon.json


终端可以是丰富多彩的

祭出一张htop的软件界面

echo可实现彩色终端的效果

  • \e[0m 将颜色重新置回
  • 自从使用了linux, 才了解到原来命令行是可以丰富多彩的, 开始或许会感觉很神秘, 事实上, 实现起来并不难, 你只需了解echo的三个参数, 就可以完成大多数的需求, 如上图, 第一个参数可以控制文字的格式(加粗, 下划线, 闪动, 浅色, 反白), 第二个参数可以控制文字的颜色(黑, 红, 绿, 黄, 蓝, 洋红, 青, 白), 第三个参数可以控制文字的背景色(黑, 红, 绿, 黄, 蓝, 洋红, 青, 白), 下面我们来演示这三个参数的使用~

改变输出文字的颜色

代码语言:javascript
复制
echo -e "\e[0;30m 这是黑色 \e[0m"
echo -e "\e[0;31m 这是红色 \e[0m"
echo -e "\e[0;32m 这是绿色 \e[0m"
echo -e "\e[0;33m 这是黄色 \e[0m"
echo -e "\e[0;34m 这是蓝色 \e[0m"
echo -e "\e[0;35m 这是洋红色 \e[0m"
echo -e "\e[0;36m 这是青色 \e[0m"
echo -e "\e[0;37m 这是白色 \e[0m"

颜色码:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37

改变输出文字的格式

代码语言:javascript
复制
# 反白
echo -e "\e[7;30m 这是黑色 \e[0m"
echo -e "\e[7;31m 这是红色 \e[0m"
echo -e "\e[7;32m 这是绿色 \e[0m"
echo -e "\e[7;33m 这是黄色 \e[0m"
echo -e "\e[7;34m 这是蓝色 \e[0m"
echo -e "\e[7;35m 这是洋红色 \e[0m"
echo -e "\e[7;36m 这是青色 \e[0m"
echo -e "\e[7;37m 这是白色 \e[0m"

# 跳动
echo -e "\e[5;30m 这是黑色 \e[0m"
echo -e "\e[5;31m 这是红色 \e[0m"
echo -e "\e[5;32m 这是绿色 \e[0m"
echo -e "\e[5;33m 这是黄色 \e[0m"
echo -e "\e[5;34m 这是蓝色 \e[0m"
echo -e "\e[5;35m 这是洋红色 \e[0m"
echo -e "\e[5;36m 这是青色 \e[0m"
echo -e "\e[5;37m 这是白色 \e[0m"

# 下划横线
echo -e "\e[4;30m 这是黑色 \e[0m"
echo -e "\e[4;31m 这是红色 \e[0m"
echo -e "\e[4;32m 这是绿色 \e[0m"
echo -e "\e[4;33m 这是黄色 \e[0m"
echo -e "\e[4;34m 这是蓝色 \e[0m"
echo -e "\e[4;35m 这是洋红色 \e[0m"
echo -e "\e[4;36m 这是青色 \e[0m"
echo -e "\e[4;37m 这是白色 \e[0m"

# 浅色
echo -e "\e[2;30m 这是黑色 \e[0m"
echo -e "\e[2;31m 这是红色 \e[0m"
echo -e "\e[2;32m 这是绿色 \e[0m"
echo -e "\e[2;33m 这是黄色 \e[0m"
echo -e "\e[2;34m 这是蓝色 \e[0m"
echo -e "\e[2;35m 这是洋红色 \e[0m"
echo -e "\e[2;36m 这是青色 \e[0m"
echo -e "\e[2;37m 这是白色 \e[0m"

# 加粗
echo -e "\e[1;30m 这是黑色 \e[0m"
echo -e "\e[1;31m 这是红色 \e[0m"
echo -e "\e[1;32m 这是绿色 \e[0m"
echo -e "\e[1;33m 这是黄色 \e[0m"
echo -e "\e[1;34m 这是蓝色 \e[0m"
echo -e "\e[1;35m 这是洋红色 \e[0m"
echo -e "\e[1;36m 这是青色 \e[0m"
echo -e "\e[1;37m 这是白色 \e[0m"

# 正常输出
echo -e "\e[0;30m 这是黑色 \e[0m"
echo -e "\e[0;31m 这是红色 \e[0m"
echo -e "\e[0;32m 这是绿色 \e[0m"
echo -e "\e[0;33m 这是黄色 \e[0m"
echo -e "\e[0;34m 这是蓝色 \e[0m"
echo -e "\e[0;35m 这是洋红色 \e[0m"
echo -e "\e[0;36m 这是青色 \e[0m"
echo -e "\e[0;37m 这是白色 \e[0m"

改变输出文字的背景

代码语言:javascript
复制
# 改变背景色
echo -e "\e[0;37;40m 黑色背景 \e[0m"
echo -e "\e[0;37;41m 红色背景 \e[0m"
echo -e "\e[0;37;42m 绿色背景 \e[0m"
echo -e "\e[0;37;43m 黄色背景 \e[0m"
echo -e "\e[0;37;44m 蓝色背景 \e[0m"
echo -e "\e[0;37;45m 洋红背景 \e[0m"
echo -e "\e[0;37;46m 青色背景 \e[0m"
echo -e "\e[0;37;47m 白色背景 \e[0m"

其他技巧

  • 输出不换行的文字 echo -n

参考材料:

小结:

好玩才是最重要的, echo是一个简单而好玩的命令, 如果你对shell编程感兴趣, echo或许是入门shell编程的极好方式~

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.08.07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 实用技巧: echo简化操作
  • 终端可以是丰富多彩的
  • echo可实现彩色终端的效果
  • 改变输出文字的颜色
  • 改变输出文字的格式
  • 改变输出文字的背景
  • 其他技巧
  • 参考材料:
  • 小结:
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档