Linux基础:常用命令之echo命令详解(一)

简介: Linux基础:常用命令之echo命令详解(一)

echo命令是linux中最基础的命令,也是最常用的命令,特别是在写shell脚本的时候,可能会被经常用到,虽然echo命令比较基础,但是功能还算丰富,此处对echo命令的常用方法进行总结,并给出示例,方便记忆与回顾。


echo命令的基本用法,很简单,就是echo命令后面跟上要输出的文本,如下:

640.png

除了基本用法,还可以配合一些选项使用

echo -n表示不换行输出:

640.png

可以看到,如果不添加-n选项,文本输出以后,指定换行了,而添加了-n选项以后,文本直接连着命令提示符输出了,并没有换行,这样演示的效果不明显,我们可以同时echo两条信息,效果比较明显,示例如下:


640.png


当使用echo输出命令替换后的内容时,命令执行结果的格式可能会发生变化,比如,如果我们想要输出ifconfig命令执行后的结果,我们可能会使用如下命令:

640.jpg

但是我们发现,这样输出的文本的格式发生了变化,这样可能不是我们想要的,因为当我们直接执行ifconfig时,ifconfig返回的结果是多行的,可是当我们使用echo输出的时候,格式发生了变化,如果想要按照命令执行后的原格式输出命令替换后的结果,可以使用如下方法,如下方法在写脚本的时候可能会用到。

640.jpg


我们可以使用-e选项输出转义字符,比如常用的转义字符“\t”,转义字符“\t”表示制表符,作用相当于我们键盘上的tab键。我们可以使用echo -e输出转义字符,将转义字符输出到屏幕上,示例如下:

640.png


上图示例中,已经将“\t”转义过的制表符输出到了屏幕上,所以,我们只要能够记住这些转义字符,就可以在echo命令中输出它们,那么我们将常用的转义字符总结一些,然后给出示例:


常用的转义字符如下:

  • \b转义相当于按退格键(backspace),但前提是“\b”后面存在字符,具体效果参考下方示例。
  • \c不换行输出,在“\c”后面不存在字符的情况下,作用相当于echo -n,具体效果参考下方示例。
  • \n换行,效果看示例。
  • \f换行,但是换行后的新行的开头位置连接着上一行的行尾,具体效果查看示例。
  • \v与\f相同;
  • \t转以后表示插入tab,即制表符,已经在上面举过例子;
  • \r光标移至行首,但不换行,相当于使用“\r”以后的字符覆盖“\r”之前同等长度的字符,只看这段文字描述的话可能不容易理解,具体效果查看示例。
  • \\表示插入“\”本身;


使用echo命令输出上述转义字符的示例如下:


使用echo命令输出"\b"转义字符,在"\b"后面存在字符的前提下,"\b"表示删除前一个字符,“\b\b”表示删除前两个字符。

640.png

可以看到,上例中,在“\b”后面不存在任何字符时,"\b"并没有转义为"退格键",当"\b"后面存在字符时,一个"\b"就相当于按一次backspace键。


我们也可以使用\c转义符,表示不换行输出,但是当"\c"后面仍然存在字符时,"\c"后面的字符将不会被输出,如果"\c"后面不存在任何字符时,效果与"echo -n"相同,示例如下:


640.png

"\n"转义后表示换行,下例中,被输出的字符从"\n"处开始另起一行。

640.png

"\f"转义符表示换行,但是换行后的新行的开头位置连接着上一行的行尾,如下图所示,下图中的第三个例子中又两个"\f".

640.png


“\v”转义符与“\f”转义符的作用相同。


“\r”转义符表示使用“\r”后面的字符覆盖“\r”之前的同等长度的字符,比较不容易理解,但是看下图示例,就很容易明白了。

640.png

上图中的第一示例中,“\r”后面的123覆盖了abc,defg没有被覆盖,第二个示例中,因为abc一共就3个字符,123也是又3个字符,所以123覆盖了abc以后,只剩下了123,第三个示例中,123一共有3个字符,a只有一个字符,覆盖以后只剩下123,第四个示例中,“\r”后面并不存在任何字符,所以"\r"前面的字符没有被覆盖。


“\\”经过转义以后,表示“\”示例如下。

640.png


通过echo命令,还能够输出彩色的文本,或者带有彩色背景的文本,因为篇幅 原因,我们另起一篇文章进行总结。后续发出来

相关文章
|
23小时前
|
安全 数据挖掘 Linux
Linux命令rpm深度解析
`rpm`是Linux下的软件包管理器,用于安装、升级、卸载和查询`.rpm`包,常见于Red Hat系Linux。它管理依赖、维护软件信息数据库,支持版本控制和安全验证。常用命令如`-i`安装,`-U`升级,`-e`卸载,`-q`查询。安装时用`-v`和`-h`可查看详细信息和进度。注意依赖关系、权限和签名验证,最佳实践包括使用仓库、定期更新和备份数据。
|
23小时前
|
存储 缓存 网络协议
Linux系统之ARP命令的基本使用
【7月更文挑战第2天】Linux系统之ARP命令的基本使用
11 2
|
23小时前
|
存储 数据挖掘 Linux
探索Linux命令rpm2cpio:解析RPM包内容的利器
`rpm2cpio`是Linux下用于从RPM包中提取内容的工具,它将`.rpm`转换为CPIO归档。无需安装,可直接访问包内文件,适合数据分析。命令简单,常与`cpio`结合使用,如`rpm2cpio package.rpm | cpio -idmv`解压文件。示例包括提取特定文件和列出包内所有文件。注意权限、路径和文件完整性,使用前备份数据,并查阅文档以优化使用。
|
23小时前
|
监控 安全 Linux
Linux命令rpmkeys:守护RPM包的安全之门
`rpmkeys`是Linux中管理RPM包公钥的工具,用于验证软件包的签名,确保安全。它支持导入、导出、删除和查询公钥,通过数字签名保证包的完整性和来源可靠性。例如,使用`--import`导入公钥,`--query`查询公钥。最佳实践包括验证公钥来源、定期更新并备份。该命令间接保障了数据处理和分析的安全环境。
|
23小时前
|
Shell Linux C语言
Linux初学者必备:全面掌握核心命令
Linux命令是操作系统的核心组成部分,用于管理和操作文件系统、网络、硬件资源以及执行各种任务。下面列出了一些常用的Linux命令及其基本用途,
Linux初学者必备:全面掌握核心命令
|
1天前
|
缓存 监控 Linux
Linux系统之smem命令的基本使用
【7月更文挑战第1天】Linux系统之smem命令的基本使用
18 2
|
2天前
|
Unix Linux
Linux中grep命令的高级用法与实例
Linux中grep命令的高级用法与实例
|
1天前
|
存储 监控 Linux
深入解析Linux命令:rootfs-expand
`rootfs-expand`是假设的Linux工具,用于扩展嵌入式设备或特定发行版的根文件系统。它检查当前大小,确定可扩展空间,并调整分区。命令参数包括 `-s` 设置扩展大小,`-f` 强制扩展,`-v` 显示详细信息和 `-h` 显示帮助。扩展前务必备份数据,谨慎使用强制选项,并确保有足够未分配空间。示例命令:`sudo rootfs-expand -s 4G [-v]`。虽然具体实现会有所不同,但这个概念可以帮助理解根文件系统扩展的一般流程。
|
1天前
|
数据采集 Linux 数据处理
深入了解Linux命令:rev
`rev`命令在Linux中反转文本字符顺序,用于数据预处理和分析。它可以改变每行字符的排列,例如`echo "Hello, World!" | rev`输出`!dlroW ,olleH`。常用参数包括显示版本信息的`-V`。结合其他命令如`cat`,可处理文件内容。注意行格式和性能影响,适用于小到中型数据处理。
|
23小时前
|
Linux 调度
Linux |使用“at”命令在指定时间运行任务
Linux |使用“at”命令在指定时间运行任务
5 0