我使用过的Linux命令之echo - 显示文本、打印信息
本文链接:http://codingstandards.iteye.com/blog/786101
(转载请注明出处)
用途说明
echo命令用来打印信息,是一个最常用的命令。在命令行中常用来打印环境变量的值,已确定当前环境中是否设置了指定的环境变量。在shell脚本中,常用来打印信息和帮助调试程序。
常用参数
-n 打印信息之后不换行。
-e 对字符串转义。
使用示例
示例一 打印当前的PATH设置
[root@jfht ~]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/apache/apache-ant-1.7.1/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@jfht ~]#
示例二 打印当前的LANG设置
[root@jfht ~]# echo $LANG
zh_CN.GB18030
[root@jfht ~]#
网上经常有人问在Linux下将默认语言更改为中文,我一般的做法是
在/etc/profile的末尾加上
export LANG=zh_CN.GB18030
然后重新登录即可。但是较低版本的Linux通常在某些命令的输出中出现乱码,比如常用的service命令。
示例三 打印之后不换行
[root@jfht ~]# echo -n "Please input your name: "; read name; echo "Your name is $name"
Please input your name: coding
Your name is coding
[root@jfht ~]#
此处使用了-n参数,避免在输出信息之后自动换行。
示例四 对输出信息进行转义,比如输出换行
[root@jfht ~]# echo "hello\nworld"
hello\nworld
[root@jfht ~]# echo -e "hello\nworld"
hello
world
[root@jfht ~]# echo 'hello\nworld'
hello\nworld
[root@jfht ~]# echo -e 'hello\nworld'
hello
world
[root@jfht ~]# echo hello; echo world
hello
world
[root@jfht ~]#
可以使用如下转义字符
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\v 与\f相同;
\\ 插入\字符;
\nnn 插入nnn(八进制)所代表的ASCII字符;
[root@jfht ~]# echo "hello\fworld"
hello\fworld
[root@jfht ~]# echo -e "hello\fworld"
hello
world
[root@jfht ~]# echo "hello\vworld"
hello\vworld
[root@jfht ~]# echo -e "hello\vworld"
hello
world
[root@jfht ~]#
示例五 输出到标准错误输出
在编写脚本时,经常会利用管道将前一个命令的输出作为后一个命令的输入,如果要打印调试信息,但不把该信息干扰后面的命令,可以将调试信息输出到标准错误输出,如下所示。
[root@jfht ~]# echo hello >&2
hello
[root@jfht ~]#
下面是一个应用此技巧的脚本片段。
# usage: proc_cmd
proc_cmd()
{
CMD=$1
NUM=$(get_estimate_count $CMD)
# 只有返回数值的时候才打印信息,否则出错了
if [ "$NUM" ]; then
printf "%-48s\t%16s\n" $CMD $NUM
else
echo $CMD >&2
echo $CMD >>failed.dat
fi
}
问题思考
1. 将要输出的信息放在单引号、双引号以及不放在引号中有什么区别?
2. 怎样输出彩色文字(如同ls时的效果)?
相关资料
【1】飞诺网 linux echo 用法
【2】360doc linux命令 echo(转载)
返回 我使用过的Linux命令系列总目录
分享到:
相关推荐
以下是一些常见的Linux命令及其详细解释: **1. 时间相关命令(date)** `date`命令用于显示和设置系统时间。例如,输入`date`将显示当前日期和时间。要设置系统时间,可以使用`date MMDDhhmm[YYYY]`格式,例如`...
在Linux操作系统中,掌握基础命令是使用和管理系统的必备技能。Linux命令行提供了一种高效且灵活的方式来执行各种任务,从文件操作到系统管理,无一不在其涵盖范围之内。以下是一些常见的Linux基础命令及其详细解释...
- 调用命令:在脚本中可以直接调用Linux命令,如`ls`, `grep`等。 通过学习和熟练掌握上述内容,用户将能够更加高效地在Linux环境中工作,不论是日常的文件管理还是编写自动化脚本,都能得心应手。嵌入式系统课程...
- 学会如何获取Linux命令的帮助信息。 **知识点:** - **获取帮助信息的方法:** - 使用 `man` 命令查看命令的手册页。 - 使用 `command --help` 显示命令的帮助信息。 **示例命令:** - 查看 `ls` 命令的帮助...
`echo`命令在Linux系统中是一种非常基础且常用的工具,主要用于向标准输出设备(通常是终端)打印一行或多行文本。除了基本的文本输出功能外,`echo`还支持一些特定的参数来控制输出的格式,比如换行、转义字符等。 ...
48. `echo`: 在屏幕上显示消息,常用于调试和输出信息。 49. `egrep`: 扩展的正则表达式搜索,比`grep`支持更多的正则表达式语法。 这只是Linux命令海洋中的一部分,了解并熟练掌握这些命令能极大地提高在Linux环境...
Echo 是 Linux 操作系统中的一种常用的命令,它可以用来输出字符串、显示信息、打印文本等。下面是关于 Echo 命令的使用方法和知识点总结。 一、Echo 的基本用法 Echo 命令的基本用法是将字符串输出到标准输出设备...
echo命令:命令是 Unix/Linux 系统中的一个常用命令,用于在终端中打印输出文本或变量的值。它也经常用于脚本中来输出信息、变量值或命令执行的结果。 echo 与 printf 的区别:echo 简单且易用,而 printf 提供了更...
- 示例:`history` 显示执行过的命令。 3. **alias (设置命令别名)** - 用途:定义命令别名。 - 示例:`alias ll='ls -l'` 定义 `ll` 为 `ls -l` 的别名。 4. **export (设置环境变量)** - 用途:设置或显示...
DOS命令与Linux命令虽然在表面上有些相似,但两者之间存在显著的区别,主要体现在操作系统环境、命令语法、功能扩展以及交互方式上。本篇将深入探讨这些命令的对比,帮助初学者更好地理解和使用Linux。 首先,DOS是...
在Linux操作系统中,掌握常用的命令是提升工作效率的关键。Linux命令行提供了一种高效且灵活的方式来管理系统、文件和网络。这份“Linux常用命令大全”涵盖了众多基础到进阶的命令,帮助用户更好地理解和运用Linux...
`history`显示你之前输入过的命令历史,便于查找和重复使用命令。 17. **ps** - 显示进程状态 `ps`用于查看当前系统的进程状态,`ps aux`是常用的组合,显示所有用户的进程。 18. **kill** / **pkill** - 终止...
`echo`命令是Linux系统中非常基础且重要的工具之一,主要用于在终端或脚本中输出文本信息。由于其简单易用的特点,在日常运维工作以及Shell编程中得到了广泛的应用。本文将详细介绍`echo`命令的基本用法、参数选项...
使用文本编辑器编辑环境变量文件`/root/.bashrc`: ```bash # vim /root/.bashrc ``` 2. **添加环境变量路径** 在文件末尾添加以下内容来指定新的编译器路径: ```bash export PATH=$PATH:/usr/local/arm...
sudo 命令是 Linux 系统中最重要的命令之一,它允许用户以超级用户身份运行命令。sudo 命令的全称是 "Super User DO",它可以让用户以 root 用户身份执行命令。 Synopsis: * -d directory, --chdir=directory (在...
这些只是Linux命令的冰山一角,实际上还有许多其他命令和工具,如文本编辑器`vi/vim`、包构建工具`make`、版本控制系统`git`等。通过深入学习和实践这些命令,你将能够更好地理解和操控Linux系统,提升工作效率。
17. **echo**:打印命令行中的文本。`echo "Hello, World!"` 将在终端显示 "Hello, World!"。 18. **sed**:流编辑器,常用于对文本进行替换、删除等操作。 19. **awk**:文本处理工具,用于处理和分析结构化的...
12. **echo**:打印文本到终端,常用于构建脚本,如`echo "Hello, World!"`。 13. **sed**:流编辑器,可用于替换文本行,如`sed 's/old/new/g' file.txt`替换file.txt中所有的"old"为"new"。 14. **chmod**:改变...