Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式:
1 | echo string |
Shell符号注解
1 | > 重定向输出到某个位置,替换原有文件的所有内容。 |
echo输出的字符串总结:
===================================================================
符号 | 能否引用变量 | 能否引用转移符 | 能否引用文本格式符(如:换行符、制表符) |
---|---|---|---|
单引号 | 否 | 否 | 否 |
双引号 | 能 | 能 | 能 |
无引号 | 能 | 能 | 否 |
===================================================================
1.显示普通字符串
1 | echo "It is a test" |
这里的双引号完全可以省略,以下命令与上面实例效果一致:
1 | echo It is a test |
2.显示转义字符
1 | echo "\"It is a test\"" |
结果将是:
1 | "It is a test" |
同样,双引号也可以省略
3.显示变量
read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量
read 命令一个一个词组地接收输入的参数,每个词组需要使用空格进行分隔;如果输入的词组个数大于需要的参数个数,则多出的词组将被作为整体为最后一个参数接收。
read 参数说明:
1 | -p 输入提示文字 |
示例:
1 |
|
以上代码保存为 test.sh,name 接收标准输入的变量,结果将是:
1 | [root@www ~]# sh test.sh |
4.显示换行
1 | echo -e "OK! \n" # -e 开启转义 |
输出结果:
1 | OK! |
5.显示不换行
1 |
|
输出结果:
1 | OK! It is a test |
6.显示结果定向至文件
1 | echo "It is a test" > myfile |
7.原样输出字符串,不进行转义或取变量(用单引号)
1 | echo '$name\"' |
输出结果:
1 | $name\" |
8.显示命令执行结果
1 | echo `date` |
注意: 这里使用的是反引号 `, 而不是单引号 ‘。
结果将显示当前日期
1 | Thu Jul 24 10:08:46 CST 2014 |
参考: