下面主要用例子说明用法(bash环境下测试)
1)echo显示字符串
普通字符串可以在echo后直接输入字符串,但这样当要输出某些字符如\时会有问题(这种写法的时候\是被当作继行符处理过滤掉的,要输出一个\必须打\\,跟c语言printf输出的要求相象),所以一般最好用'string' 或"string"的格式,这样即使是\也可以输出,方便直观。
#echo hello world
hello world
#echo hello\ world
hello world
#echo hello\\ world
hello\ world
#echo 'hello\\ world' 或者: echo "hello\\ world"
hello\\ world
2)echo的转义显示: 加上-e参数
输出多行
#echo -e 'hello\nworld'
hello
world
输出ascii字符: echo -e \NNN (NNN为ascii字符的八进制码号,不符合八进制的将会按照字面意义进行打印)
#echo -e '\61 \62 \101 \141'
1 2 A a
更详细的可以参看下面的参考资料,enjoy!
参考资料
info echo和man echo得到的信息:
File: coreutils.info, Node: echo invocation, Next: printf invocation, Up: Printing text
`echo': Print a line of text
============================
`echo' writes each given STRING to standard output, with a space
between each and a newline after the last one. Synopsis:
echo [OPTION]... [STRING]...
The program accepts the following options. Also see *Note Common
options::.
`-n'
Do not output the trailing newline.
`-e'
Enable interpretation of the following backslash-escaped
characters in each STRING:
`\a'
alert (bell)
`\b'
backspace
`\c'
suppress trailing newline
`\f'
form feed
`\n'
new line
`\r'
carriage return
`\t'
horizontal tab
`\v'
vertical tab
`\\'
backslash
`\NNN'
the character whose ASCII code is NNN (octal); if NNN is not
a valid octal number, it is printed literally.
============================
echo - manual
ECHO(1) FSF ECHO(1)
NAME
echo - display a line of text
SYNOPSIS
echo [OPTION]... [STRING]...
DESCRIPTION
NOTE: your shell may have its own version of echo which will supercede
the version described here. Please refer to your shell's documentation
for details about the options it supports.
Echo the STRING(s) to standard output.
-n do not output the trailing newline
-e enable interpretation of the backslash-escaped characters listed
below
-E disable interpretation of those sequences in STRINGs
--help display this help and exit
--version
output version information and exit
Without -E, the following sequences are recognized and interpolated:
\NNN the character whose ASCII code is NNN (octal)
\\ backslash
\a alert (BEL)
\b backspace
\c suppress trailing newline
\f form feed
\n new line
\r carriage return
\t horizontal tab
\v vertical tab
AUTHOR
Written by FIXME unknown.
REPORTING BUGS
Report bugs to <bug-coreutils@gnu.org>.
COPYRIGHT
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is
NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
SEE ALSO
The full documentation for echo is maintained as a Texinfo manual. If
the info and echo programs are properly installed at your site, the
command
info echo
should give you access to the complete manual.
GNU coreutils 4.5.3 February 2003 ECHO(1)