1)echo显示字符串 //这个功能还真像c里面的printf 语句
普通字符串可以在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
ASCII字符之存在
American Standard Code for Information Interchange, ASCII ;在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,象a、b、c、d这样的52个字母(包括大写)、以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了所谓的ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。
转义字符之存在
转义字符串(Escape Sequence)也称字符实体(Character Entity)。在HTML中,定义转义字符串的原因有两个:第一个原因是像“<”和“>”这类符号已经用来表示HTML标签,因此就不能直接当作文本中的符号来使用。为了在HTML文档中使用这些符号,就需要定义它的转义字符串。当解释程序遇到这类字符串时就把它解释为真实的字符。在输入转义字符串时,要严格遵守字母大小写的规则。第二个原因是,有些字符在ASCII字符集中没有定义,因此需要使用转义字符串来表示。
\‘ 单引号
\ 双引号
\\ 反斜杠
\0 空字符
\0nnn 八进制数
\a 声音符
\b 退格符
\f 换页符
\n 换行符
\r 回车符
\t 水平制表符
\v 垂直制表符
\x 十六进制符