输入输出的数据流分为三种:1标准输入,2标准输出,3标准错误输出
1、 输入的数据流: <-- 标准输入(stdin),键盘
代码为0,使用<或<<
2、输出的数据流:--> 标准输出(stdout).显示器
代码为1,使用>或>>
3、 错误的输出流: -->标准错误输出(stderr),显示器
代码为2,使用2>或2>>
输出重定向:
1、标准输出重定向
符号: > 特性:覆盖输出
>> 特性:追加输出
2、 标准错误输出流重定向 :
符号: 2> :覆盖输出
2>>:追加输出
用户可以使用 “set -C”命令禁止覆盖输出重定向至已存在的文件
但此时可使用强制覆盖输出:>|
也可使用“set +C”命令可关闭上述特性
输入重定向:
输入重定向简单的说就是将原本需要键盘输入的数据改成文件内容来代替。
符号:<: 将文件内容输入至命令
<< : 结束输出
grep与正则表达式
grep:根据模式,搜索文本,并将符合模式的文本行显示出来
Pattern:文本字符和正则表达式的元字符组合而成的匹配条件
grep [OPPTIONS] PATTERN [FILE...]
-i:忽略大小写
--color:颜色
-v:显示没有被模式匹配到的行
-o:只显示被模式匹配到的字符串
grep正则表达式元字符集(基本集)
. 匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。
* 匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。
.*一起用代表任意字符。
[] 匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。
[^] 匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。
^ 锚定行的开始 如:'^grep'匹配所有以grep开头的行。
$ 锚定行的结束 如:'grep$'匹配所有以grep结尾的行。
/< 或\b 锚定单词的开始,
/> 或\b锚定单词的结束,如'grep/>'匹配包含以grep结尾的单词的行。
x/{m/} 重复字符x,m次,如:'o/{5/}'匹配包含5个o的行。 x/{m,/} 重复字符x,至少m次,如:'o/{5,/}'匹配至少有5个o的行。
x/{m,n/} 重复字符x,至少m次,不多于n次,如:'o/{5,10/}'匹配5--10个o的行。
网友评论