Linux echo文本处理命令的使用及示例
2023-06-13 09:19:59 时间
echo 在linux帮助文档的描述是显示一行文本,类似于python和java等编程语言中的print语句,实际上它的作用不仅仅如此。可以使用man echo查看详细的参数说明。
echo命令用于输出指定的字符串,常见用法如下:
[root@localhost ~]$ echo # 输出一个空白行 [root@localhost ~]$ echo "hello world" # 输出指定的字符串 [root@localhost ~]$ echo $HOSTNAME # 输出变量名对应的值 [root@localhost ~]$ echo "hello world" 1.txt # 输出字符串到指定文件 [root@localhost ~]$ echo `date` # 输出命令的执行结果
常用参数:
[root@localhost ~]$ echo -n "hello world" # -n 不在末尾输出换行符,默认会在末尾输出换行符 hello world[root@localhost ~]$ [root@localhost ~]$ echo -e "hello\nworld" # -e 用于启用反斜杠转义,如 \n 会转换成换行 hello world [root@localhost ~]$ echo -E "hello\nworld" # -E 用于禁用反斜杠转义,默认就是禁用 hello\nworld
常用转义符:
[root@localhost ~]$ echo -e "hello \\ world" # \\ 用于输出反斜杠 hello \ world [root@localhost ~]$ echo -e "\a" # \a 用于响铃,发出声音的响铃哦 [root@localhost ~]$ echo -e "hello\bworld" # \b 用于退格,参考:https://blog.csdn.net/lucosax/article/details/34963593 hellworld [root@localhost ~]$ echo -e "hello \c world" # \c 使用该转义符后,\c 后面的字符不再输出 hello [root@localhost ~]$ echo -e "\e[32;1m hello world \e[35;1m" # \e 用于控制字体和背景颜色 hello world [root@localhost ~]$ echo -e "hello \f hello \f hello" # \f 换行,且光标停在换行后原来的地方 hello hello hello [root@localhost ~]$ echo -e "hello\nworld" # \n 换行符 hello world [root@localhost ~]$ echo -e "hello\rworld" # \r 用于把光标移到行首,相当于把 \r 前面的字符删除,只输出 \r 后面的字符 world [root@localhost ~]$ echo -e "hello\tworld" # \t 制表符,相当于键盘上的Tab键 hello world [root@localhost ~]$ echo -e "hello\vworld" # \v 垂直制表符 hello world
echo 输出颜色:
语法:echo -e \033[字体背景颜色;字体颜色m字符串\033[0m
例子:echo -e \033[41;36m something here \033[0m
解释:其中41的位置代表字体背景颜色,36的位置是代表字体颜色
//输出带颜色的字体 echo -e "\033[30m 黑色字 \033[0m" echo -e "\033[31m 红色字 \033[0m" echo -e "\033[32m 绿色字 \033[0m" echo -e "\033[33m 黄色字 \033[0m" echo -e "\033[34m 蓝色字 \033[0m" echo -e "\033[35m 紫色字 \033[0m" echo -e "\033[36m 天蓝字 \033[0m" echo -e "\033[37m 白色字 \033[0m"
[root@aliyun-hk1 linux-shell-test]# echo -n hello world hello world[root@aliyun-hk1 linux-shell-test]# echo hello world hello world
example3: 显示一行文本,启用反斜杠后面的转义字符
[root@aliyun-hk1 linux-shell-test]# echo -e "hello\nworld" hello world [root@aliyun-hk1 linux-shell-test]# echo -e "hello\tworld" hello world
example4: 显示一行文本,禁用反斜杠后面的转义字符,echo默认参数
[root@aliyun-hk1 linux-shell-test]# echo -E "hello\nworld" hello\nworld [root@aliyun-hk1 linux-shell-test]# echo -E "hello\tworld" hello\tworld
example5: echo与cat的差异对比,echo只用于输出文本,cat用于输出文件内容或者从标准输入中输出
[root@aliyun-hk1 linux-shell-test]# echo hello hello [root@aliyun-hk1 linux-shell-test]# cat hello cat: hello: No such file or directory [root@aliyun-hk1 linux-shell-test]# echo /etc/hostname /etc/hostname [root@aliyun-hk1 linux-shell-test]# cat /etc/hostname aliyun-hk1 [root@aliyun-hk1 linux-shell-test]# echo hello|cat hello [root@aliyun-hk1 linux-shell-test]#
examle6: echo在自动化构建中的作用,例如我们可以将DB中返回的数据格式化成ansible需要的数据,通过with_lines 传入某个task并循环使用。在某些情况下,从网络、DB等方式获取的标准输出,可以通过echo结合awk和grep等实现结果的格式化或数据清洗,然后用到后续的 脚本中。
[root@aliyun-hk1 linux-shell-test]# echo -en "name phone addr\nrobin 13712345678 CN\ntom 13812345678 HK\n" name phone addr robin 13712345678 CN tom 13812345678 HK [root@aliyun-hk1 linux-shell-test]# echo -en "name phone addr\nrobin 13712345678 CN\ntom 13812345678 HK\n"|awk "NR 1 {print $1}" robin - name: show the items from DB debug: msg: "{{ item }}" with_lines: "echo -en "name phone addr\nrobin 13712345678 CN\ntom 13812345678 HK\n"|awk "NR 1 {print $1}" TASK [show the items from DB] ****************************************************************************************************************************************************************************************************************ok: [localhost] = (item=robin) = { "msg": "robin" ok: [localhost] = (item=tom) = { "msg": "tom"
example7: echo还可以将获取到并格式化好的数据写入到一个文件,等待后续使用 。
[root@aliyun-hk1 ansible-test]# echo -en "name phone addr\nrobin 13712345678 CN\ntom 13812345678 HK\n"|awk "NR 1 {print $1}" DataFromDB1.txt [root@aliyun-hk1 ansible-test]# cat DataFromDB1.txt robin [root@aliyun-hk1 ansible-test]#
到此这篇关于Linux echo文本处理命令的使用及示例的文章就介绍到这了,更多相关Linux echo命令内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题
本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 Linux echo文本处理命令的使用及示例
相关文章
- linux(二) 基本使用命令详解架构师
- Linux红帽企业版:实现高性能与安全双剑合璧(linux红帽企业版)
- Linux下安全退出指令:CtrlD(linux保存并退出命令)
- 使用情况Linux下实时查看内存使用情况(linux实时查看内存)
- 使用Linux中的chown命令更改文件属性(linux的chown命令)
- 使用 Linux rz 命令上传文件(linux命令rz)
- 一种Linux 下实现线程互斥的方法(linux线程互斥锁)
- Linux 中使用 SS 进行安全加密(linux使用ss)
- Linux线程安全之加锁运算(linux线程加锁)
- Linux系统下如何快速安装PHP(linux命令安装php)
- 和使用mysql实现Linux服务端上MySQL安装与使用(在linux服务端安装)
- vpn简易步骤:使用 Linux 搭建 PPTP VPN(linux配置pptp)
- Linux启动FTP服务命令快速指南(linux启动ftp命令)
- Linux的分支:新的趋势和可能性(linux的分支)
- Linux的主要版本:分析、比较和选择(linux有那些版本)
- Linux系统U盘启动方式简介(linux的u盘启动)
- Linux护佑下,中文之旅(linux使用中文)
- Linux下显示行号的命令汇总(linux显示行号命令)
- Linux压缩命令:将文件压缩至指定目录(linux压缩到目录)
- 学习Linux的路由跟踪命令——traceroute命令(linux路由跟踪命令)
- 学习Linux下的sed命令(linux命令sed)
- 基础Linux命令了解目录结构(linux命令目录结构)
- 配置Linux: 高级文件权限设置777(linux设置777权限)
- 如何在Linux系统中改变时区(linux改时区)
- 将 Linux 命令输出保存为文件(linux命令结果到文件)
- 如何使用Linux获取文件内容(linux获取文件内容)
- Linux操作系统的使用情况:越来越多企业和个人选择这一高效稳定的开源系统。(linux使用情况)
- Linux系统下载,推荐好用的平台(linux系统下载哪个好)
- 如何在Linux下启动监听服务(linux下启动监听)
- 掌握Linux命令,轻松修改分辨率!(linux命令修改分辨率)
- 命令Linux中使用Tar命令实现文件打包和压缩(linux中的tar)