管道符、重定向

管道符与重定向

管道命令符

管道命令符|”的做用是将前一个命令的标准输出看成后后一个命令的标准输入,格式为命令A|命令B”。linux

 

向zhusaiwei-hbza用户发送一封邮件:bash

[root@zhusaiwei-hbza ~]# echo "Content" | mail -s "Subject" zhusaiwei-hbza架构

输入输出重定向

对于输出重定向符有这些状况:spa

符号命令行

做用ci

命令 > 文件文档

将标准输出重定向到一个文件中(清空原有文件的数据)it

命令 2> 文件io

将错误输出重定向到一个文件中(清空原有文件的数据)table

命令 >> 文件

将标准输出重定向到一个文件中(追加到原有内容的后面)

命令 2>> 文件

将错误准输出重定向到一个文件中(追加到原有内容的后面)

命令 >> 文件 2>$1

将标准输出与错误输出共同写入到文件中(追加到原有内容的后面)

 

对于输入重定向有这些状况:

符号

做用

命令 < 文件

将文件做为命令的标准输入

命令 << 分界符

从标准输入中读入,直到碰见“分界符”才中止

命令 < 文件1 > 文件2

将文件1做为命令的标准输入并将标准输出到文件2

man命令的帮助文档写入到/root/man.txt中:

[root@zhusaiwei-hbza ~]# man bash > /root/man.txt

readme.txt文件中写入一行文字:

[root@zhusaiwei-hbza ~]# echo "Welcome to LinuxProbe.Com" > readme.txt

readme.txt中追加一行文字:

[root@zhusaiwei-hbza ~]# echo "Quality linux learning materials" >> readme.txt

查看readme.txt中的内容:

[root@zhusaiwei-hbza ~]# cat readme.txt

Welcome to LinuxProbe.Com

命令行通配符

Bash解释器的支持多种文本通配符包括:

通配符

含义

*

匹配零个或多个字符。

?

匹配任意单个字符。

[0-9]

匹配范围内的数字。

[abc]

匹配已出的任意字符。

 

查看sda开头的全部设备文件:

[root@zhusaiwei-hbza ~]# ls /dev/sda*

/dev/sda /dev/sda1 /dev/sda2

查看sda后面有一个字符的设备文件:

[root@zhusaiwei-hbza ~]# ls /dev/sda?

/dev/sda1 /dev/sda2

查看sda后面包含0-9数字的设备文件:

[root@linuxprobe ~]# ls /dev/sda[0-9]

/dev/sda1 /dev/sda2

查看sda后面是1或3或5的设备文件:

[root@zhusaiwei-hbza ~]# ls /dev/sda[135]

/dev/sda1

 

另外bash解释器还支持不少的特殊字符扩展:

字符

做用

\(反斜杠)

转义后面单个字符

''(单引号)

转义全部的字符

""(双引号)

变量依然生效

``(反引号)

执行命令语句

定义名称为PRICE的变量值为5:

[root@zhusaiwei-hbza ~]# PRICE=5

想要输出”价格是5″:

[root@zhusaiwei-hbza ~]# echo "Price is $PRICE"

Price is 5

想要输出”价格是$5″,但由于美圆符号与表明变量取值的$符号冲突了,因此报错了:

[root@zhusaiwei-hbza ~]# echo "Price is $$PRICE"

Price is 3767PRICE

添加一个反斜杠,将第一个$符号转义:

[root@zhusaiwei-hbza ~]# echo "Price is \$$PRICE"

Price is $5

使用单引号,变量将再也不被取值:

[root@zhusaiwei-hbza ~]# echo 'Price is \$$PRICE'

Price is \$$PRICE

执行uname -a后能够查看到本机内核的版本与架构信息(反引号里面的命令会被执行):

[root@zhusaiwei-hbza ~]# echo `uname -a`

Linux zhusaiwei-hbza.com 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux

相关文章
相关标签/搜索