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

输入/输出设备(INPUT OUTPUT)

系统设定

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

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

标准错误输出:STDERR 2

默认标准输入:键盘

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

linux I/O重定向

>:覆盖输出

>>:追加输出

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

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

set +C:关闭上述功能

2>:重定向错误输出

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

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

<:>

<<:here document>

例如:cat <

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:锚定词尾,其前面的任意字符必须作为单词尾部出现

分组:

\(\)

\(ab\)*

后向引用:

\1:第一个左括号

\2:

\3:

正则表达式:

Basic REGEXP:基本

Extended REGEXP:扩展

grep其他常用选项

-E 使用扩展正则表达式

-A n 同时显示匹配的后面n行的信息

-B n 同时显示匹配的前面n行的信息

-C n 同时显示匹配的前面和后面n的信息

扩展正则表达式:

基本和正则表达式一样,有几个不一样

+:匹配其前面的字符至少1次

{m,n}:不要写反斜杆

a|b:表示a or b

egrep:x相当于 grep -E,扩展grep

fgrep:fast grep,快速grep,不支持正则表达式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值