码迷,mamicode.com
首页 > 系统相关 > 详细

linux系统 I/O重定向、管道及grep用法详解

时间:2016-07-14 16:03:48      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:i/o重定向 管道 grep

输入/输出设备(INPUT OUTPUT)

系统设定

默认输出设备:标准输出 STDOUT 1

默认输入设备:标准输入 STDIN 0

标准错误输出:STDERR 2


默认标准输入:键盘

默认标准输出和错误输出:显示器


linux I/O重定向

>:覆盖输出

>>:追加输出

set -C:禁止对已经存在的文件使用覆盖重定向

强制覆盖输出:则使用>|

set +C:关闭上述功能


2>:重定向错误输出

2>>:追加方式错误输出


&>:重定向标准输出和错误输出至同一个文件


<:输入重定向

<<:Here Document

例如:cat <<EOF

hello world

EOF


管道:一个命令的输出结果是另一个命令的输入

tee命令:既能在显示器显示,又同时能保存至文件

例如:echo "hellwold" | tee xx.txt


grep,egrep,fgrep

grep:跟进模式搜索文本,并将符合模式的文本显示出来

Pattern:文本字符和正则表达式的元字符组合而成匹配条件


grep 常用选项

-i 忽略大小写

-v 显示没有被匹配的行

-o 只显示被模式匹配得到的字符串


正则表达式:Regular Express,REGEXP

元字符(贪婪模式):

.:匹配任意单个字符

[]:匹配范围内的任意字符

[^]:匹配指定范围外的任意单个字符

字符集合:[:digit:] [:lower:] [:uper:] [:alpha:] [:alnum:] [:punct:]

匹配次数:

*:匹配其前面的字符任意次

.*:任意长度的任意字符

\?:匹配其前面的字符1次或者0次

\(m,n\):匹配其前面的字符至少m次,至多n次

例如:\(1,\) \(1,3\)


位置确定

^:行首

$:行尾

^$:空白行

/<或者\b:锚定词首,其后面的任意字符必须作为单词首部出现

/>或者\b:锚定词尾,其前面的任意字符必须作为单词尾部出现


分组:

\(\)

\(ab\)*

后向引用:

\1:第一个左括号

\2:

\3:


本文出自 “忘记过去” 博客,请务必保留此出处http://xujingbo.blog.51cto.com/4633099/1826224

linux系统 I/O重定向、管道及grep用法详解

标签:i/o重定向 管道 grep

原文地址:http://xujingbo.blog.51cto.com/4633099/1826224

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!