Linux系统之echo命令的基本使用

2024-08-23 00:12

本文主要是介绍Linux系统之echo命令的基本使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Linux系统之echo命令的基本使用

  • 一、echo命令介绍
  • 二、echo命令的使用帮助
    • 2.1 echo命令的help帮助信息
    • 2.2 echo命令的语法解释
  • 三、echo命令的基本使用
    • 3.1 显示普通文本
    • 3.2 不换行输出
    • 3.3 显示带有转义字符的文本
    • 3.4 输出变量
    • 3.5 重定向文件
    • 3.6 禁止使用转义符
    • 3.7 使用for循环打印
    • 3.8 打印带颜色的文本
  • 四、注意事项

在这里插入图片描述


👨‍💻 江湖有缘
🚀 一名在运维领域不懈探索的学习者。

🌟 认证与成就
🔴 红帽 RHCE 认证
🟠 华为 HCIP 数通认证
🔵 华为 HCIE 云计算认证
…以及其他多项专业认证

🌐 个人主页
🔗 CSDN个人主页

📢 公众号
🏷️ 【运维江湖客】

👥 交流社群
💬 欢迎同行及爱好者加入我们的QQ群:
🏷️ 群号【942602415】

📝 人生格言
“人可以被毁灭,但不能被打败。”
—— 海明威


一、echo命令介绍

  • echo命令简介

echo命令是一个用于在终端中显示一行文本的命令。它通常用于脚本和命令行操作中,可以用来显示变量的值、输出错误消息、创建文本文件等。

二、echo命令的使用帮助

2.1 echo命令的help帮助信息

执行以下命令,查看echo命令的帮助信息。

[root@openEuler-test ~]#  help echo
echo: echo [-neE] [arg ...]Write arguments to the standard output.Display the ARGs, separated by a single space character and followed by anewline, on the standard output.Options:-n	do not append a newline-e	enable interpretation of the following backslash escapes-E	explicitly suppress interpretation of backslash escapes`echo' interprets the following backslash-escaped characters:\a	alert (bell)\b	backspace\c	suppress further output\e	escape character\E	escape character\f	form feed\n	new line\r	carriage return\t	horizontal tab\v	vertical tab\\	backslash\0nnn	the character whose ASCII code is NNN (octal).  NNN can be0 to 3 octal digits\xHH	the eight-bit character whose value is HH (hexadecimal).  HHcan be one or two hex digits\uHHHH	the Unicode character whose value is the hexadecimal value HHHH.HHHH can be one to four hex digits.\UHHHHHHHH the Unicode character whose value is the hexadecimal valueHHHHHHHH. HHHHHHHH can be one to eight hex digits.Exit Status:Returns success unless a write error occurs.

2.2 echo命令的语法解释

选项描述
-n不在输出末尾附加换行符。
-e启用对反斜杠转义序列的解释。
-E明确禁止对反斜杠转义序列的解释。(默认)

echo 命令解释的反斜杠转义序列:

转义序列描述
\a警告(bell)。
\b退格(backspace)。
\c不产生后续输出。
\e逃逸字符。
\E逃逸字符。
\f换页(form feed)。
\n新行(newline)。
\r回车(carriage return)。
\t水平制表符(tab)。
\v垂直制表符(vertical tab)。
\反斜杠(backslash)。
\0nnnASCII 码为 NNN(八进制)的字符。NNN 可以是 0 到 3 位的八进制数字。
\xHH值为 HH(十六进制)的八位字符。HH 可以是一位或两位的十六进制数字。
\uHHHH值为 HHHH(十六进制)的 Unicode 字符。HHHH 可以是一位到四位的十六进制数字。
\UHHHHHHHH值为 HHHHHHHH(十六进制)的 Unicode 字符。HHHHHHHH 可以是一位到八位的十六进制数字。

三、echo命令的基本使用

3.1 显示普通文本

直接使用echo命令,输出文本信息。

[root@openEuler-test ~]# echo "I have a dream !"
I have a dream !

3.2 不换行输出

默认情况下,echo命令会在输出文本后自动换行。如果不想换行,可以使用-n选项。

vim aa,sh
#!/bin/bash
echo -n "Today is "
date +%A
[root@openEuler-test ~]# sh aa.sh
Today is Friday

3.3 显示带有转义字符的文本

使用-e选项,显示带有转义字符的文本。

[root@openEuler-test ~]# echo -e "hello \nworld !"
hello
world !

3.4 输出变量

  • 定义变量
[root@openEuler-test ~]# echo "AAA  $AAA"
AAA  jeven

3.5 重定向文件

使用echo命令重定向文件

[root@openEuler-test ~]# echo hello > test.txt
[root@openEuler-test ~]# cat test.txt
hello

配合tee命令快速写入多行内容到文件

cat << EOF | tee test01.txt
AWESAA01
LOWWW122
OOP123
EOF

3.6 禁止使用转义符

使用-E选项, 禁止使用转义符。

[root@openEuler-test ~]# echo -E "hello \nworld !"
hello \nworld !

3.7 使用for循环打印

用for循环打印数字序列

[root@openEuler-test ~]# for i in {1..10}; do echo $i; done
1
2
3
4
5
6
7
8
9
10

3.8 打印带颜色的文本

打印带颜色的文本

[root@openEuler-test ~]# echo -e "\e[1;36mI have a dream ! \e[0m"
I have a dream !

在这里插入图片描述

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

四、注意事项

  • echo 命令默认会在输出末尾添加一个新行。

  • 使用 -n 选项可以避免在输出末尾添加新行。

  • 使用 -e 选项可以启用对转义序列的解释。

  • 单引号包围文本可以防止 shell 对变量进行扩展。

  • 双引号允许变量和命令替换在输出中生效。

  • 使用 ANSI 转义序列可以在终端中输出带颜色的文本。

  • 官方参考链接:https://man7.org/linux/man-pages/man1/echo.1.html

【原文地址:https://blog.csdn.net/jks212454/article/details/141262069】

这篇关于Linux系统之echo命令的基本使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1097801

相关文章

Java中的ConcurrentBitSet使用小结

《Java中的ConcurrentBitSet使用小结》本文主要介绍了Java中的ConcurrentBitSet使用小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、核心澄清:Java标准库无内置ConcurrentBitSet二、推荐方案:Eclipse

Go语言结构体标签(Tag)的使用小结

《Go语言结构体标签(Tag)的使用小结》结构体标签Tag是Go语言中附加在结构体字段后的元数据字符串,用于提供额外的属性信息,这些信息可以通过反射在运行时读取和解析,下面就来详细的介绍一下Tag的使... 目录什么是结构体标签?基本语法常见的标签用途1.jsON 序列化/反序列化(最常用)2.数据库操作(

Java中ScopeValue的使用小结

《Java中ScopeValue的使用小结》Java21引入的ScopedValue是一种作用域内共享不可变数据的预览API,本文就来详细介绍一下Java中ScopeValue的使用小结,感兴趣的可以... 目录一、Java ScopedValue(作用域值)详解1. 定义与背景2. 核心特性3. 使用方法

spring中Interceptor的使用小结

《spring中Interceptor的使用小结》SpringInterceptor是SpringMVC提供的一种机制,用于在请求处理的不同阶段插入自定义逻辑,通过实现HandlerIntercept... 目录一、Interceptor 的核心概念二、Interceptor 的创建与配置三、拦截器的执行顺

基于C++的UDP网络通信系统设计与实现详解

《基于C++的UDP网络通信系统设计与实现详解》在网络编程领域,UDP作为一种无连接的传输层协议,以其高效、低延迟的特性在实时性要求高的应用场景中占据重要地位,下面我们就来看看如何从零开始构建一个完整... 目录前言一、UDP服务器UdpServer.hpp1.1 基本框架设计1.2 初始化函数Init详解

C#中checked关键字的使用小结

《C#中checked关键字的使用小结》本文主要介绍了C#中checked关键字的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录✅ 为什么需要checked? 问题:整数溢出是“静默China编程”的(默认)checked的三种用

C#中预处理器指令的使用小结

《C#中预处理器指令的使用小结》本文主要介绍了C#中预处理器指令的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录 第 1 名:#if/#else/#elif/#endif✅用途:条件编译(绝对最常用!) 典型场景: 示例

Mysql中RelayLog中继日志的使用

《Mysql中RelayLog中继日志的使用》MySQLRelayLog中继日志是主从复制架构中的核心组件,负责将从主库获取的Binlog事件暂存并应用到从库,本文就来详细的介绍一下RelayLog中... 目录一、什么是 Relay Log(中继日志)二、Relay Log 的工作流程三、Relay Lo

使用Redis实现会话管理的示例代码

《使用Redis实现会话管理的示例代码》文章介绍了如何使用Redis实现会话管理,包括会话的创建、读取、更新和删除操作,通过设置会话超时时间并重置,可以确保会话在用户持续活动期间不会过期,此外,展示了... 目录1. 会话管理的基本概念2. 使用Redis实现会话管理2.1 引入依赖2.2 会话管理基本操作

Springboot请求和响应相关注解及使用场景分析

《Springboot请求和响应相关注解及使用场景分析》本文介绍了SpringBoot中用于处理HTTP请求和构建HTTP响应的常用注解,包括@RequestMapping、@RequestParam... 目录1. 请求处理注解@RequestMapping@GetMapping, @PostMappin