赞
踩
echo
命令基本上是我们经常遇到的linux命令. 最近在工作中又使用到了, 并且会议起了使用的2个技巧. 在此补充于博客内, 防止忘记.
我们可以通过使用man命令
来查看echo支持哪些命令扩展. 当然, 嫌弃麻烦的话, 你可以去某些网站查阅.
ECHO(1) User Commands ECHO(1) NAME echo - display a line of text SYNOPSIS echo [SHORT-OPTION]... [STRING]... echo LONG-OPTION DESCRIPTION Echo the STRING(s) to standard output. -n do not output the trailing newline -e enable interpretation of backslash escapes -E disable interpretation of backslash escapes (default) --help display this help and exit --version output version information and exit If -e is in effect, the following sequences are recognized: \\ backslash \a alert (BEL) \b backspace \c produce no further output \e escape \f form feed \n new line \r carriage return \t horizontal tab \v vertical tab \0NNN byte with octal value NNN (1 to 3 digits) \xHH byte with hexadecimal value HH (1 to 2 digits) NOTE: your shell may have its own version of echo, which usually supersedes the version described here. Please refer to your shell's documentation for details about the options it supports.
PS: echo的 --help
和--version
并不能直接支持. 本地试验是这个样子的, 看起来是用法不对. 后续再查看下.
# 可以看到, 此处命令直接输出了. 并未进行什么有用的操作.
sean@LAPTOP-BQK5NDTK:~$ echo -E -help
-help
sean@LAPTOP-BQK5NDTK:~$ echo --version
--version
-e
, 进行一个反转义的功能.# 不加转义符
sean@LAPTOP-BQK5NDTK:~$ echo "abc1\nabc2\nabc3"
abc1\nabc2\nabc3
# 设置转义符
sean@LAPTOP-BQK5NDTK:~$ echo -e "abc1\nabc2\nabc3"
abc1
abc2
abc3
这个参数非常有用. 比如, 我们需要把如下的配置内容写入某个文件. 不加-e
参数设置的换行符, 会导致所有的内容都写在一行内. 而使用转义符, 可以使我们的内容, 放置不同的行上. 实战操作如下.
比如我们需要写入生成这样的一个配置文件. 并且命名为application.properties
.
server=8080
host=127.0.0.1
application=springboot
echo -e "server=8080\nhost=127.0.0.1\napplication=springboot" >> application.properties
比如我们在使用某些命令的时候, 他经常会让我们在看不见的地方输入密码. 这个时候基本会比较难受.
yum install mongodb
时候, 经常需要你按2个y
进行yes确认.mysql -u root -d
. 此时, 会需要在隐藏的环境下输入密码.使用echo
加管道符复合的方式进行处理.
echo y y | yum install mongodb
这样就可以解放双手, 并且我们的脚本也可以一键式执行下去了.
[1]. Linux命令大全 - echo命令
[2].
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。