Linux输入输出重定向和文件查找值grep命令

一、文件描述符
 的shell命令,可以通过文件描述符来引用一些文件,通常使用到的文件描述符为0,1,2。系统实际上有12个文件描述符,通常使用的文件描述符如下图

文件 文件描述符
输入文件—标准输入 0(缺省是键盘,为0时是文件或者其他命令的输出)
输出文件—标准输出 1(缺省是屏幕,为1时是文件)
错误输出文件—标准错误 2(缺省是屏幕,为2时是文件)

二、文件重定向:改变程序运行的输入和输出,也就是输入源和输出地点,具体释义如下
 输出重定向:

Command > filename 把标准输出重定向到一个新文件中,当filename不存在时
Command >> filename 把标准输出重定向到一个文件中(追加)
Command > filename 把标准输出重定向到一个文件中
Command > filename 2>&1 把标准输出和错误一起重定向到一个文件中
Command 2 > filename 把标准错误重定向到一个文件中
Command 2 >> filename 把标准输出重定向到一个文件中(追加)
Command >> filename2>&1 把标准输出和错误一起重定向到一个文件(追加)

 输入重定向:

Command命令以filename文件作为标准输入,以filename2文件作为标准输出
Command命令以filename文件作为标准输入
从标准输入中读入,知道遇到delimiter分界符

 绑定重定向:

Command >&m 把标准输出重定向到文件描述符m中
关闭标准输入
Command 0>&- 同上

三、shell中的一些高级用法
1:把所有的标准错误输出出到的 黑洞中,有称为空设备(/dev/null)
[root@localhost ~]#  ls /home/ins  2> /dev/null 
[root@localhost ~]# 
   
2:把执行的标准输出和标准错误重定向到out.put
[root@localhost ~]# ls /home/ind >out.put 2>&1
[root@localhost ~]# cat out.put 
ls: cannot access /home/ind: No such file or directory
[root@localhost ~]# 

3:使用标准输入,在a.txt文件中写入 “hello world”

> HELLO WORLD !
> EOF
[root@localhost ~]# cat a.txt 
HELLO WORLD !
4:新建用户awk ,使用标准输入设置密码123456
[root@localhost ~]# useradd awk
[root@localhost ~]# 
[root@localhost ~]# echo 123456 | passwd –stdin awk
Changing password for user awk.
passwd: all authentication tokens updated successfully.
[root@localhost ~]# su – inds

四、grep命令 
 grep是中一个强大的文本搜索工具,它能使用搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局版本,它的使用权限是所有用户。
   [options]主要参数:
-c:只输出匹配行的计数。
-I:不区分大 小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及 行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。 
pattern正则表达式主要参数:
\: 忽略中特殊字符的原有含义。
^:匹配的开始行。
$: 匹配的结束行。

\>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ – ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
。:所有的单个字符。
* :有字符,长度可以为0。

简单举例说明
1、过滤/etc/passwd 文件里所有已shutdown结尾的行
[root@localhost ~]# grep shutdown$ /etc/passwd
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

/etc/passwd里搜索awk所在的行,并给awk标颜色,同时显示行号
[root@localhost ~]# grep -n awk –color=auto  /etc/passwd
45:awk:x:1158:1001::/home/awk:/bin/bash
[root@localhost ~]# 

 

grep使用简明及正则表达式 

 

下Shell编程——grep命令的基本运用

 

grep 命令详解及相关事例

 

Linux基础命令之grep详解

 

设置grep高亮显示匹配项

 

Linux grep命令学习与总结

 

14 个 grep 命令的例子

转载自:https://www.linuxidc.com/Linux/2016-04/130298.htm

声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 智乐兔
转载请注明:转自《Linux输入输出重定向和文件查找值grep命令
本文地址:https://www.zhiletu.com/archives-6394.html
关注公众号:智乐兔

赞赏

wechat pay微信赞赏alipay pay支付宝赞赏

上一篇
下一篇

相关文章

在线留言

你必须 登录后 才能留言!

在线客服
在线客服 X

售前: 点击这里给我发消息
售后: 点击这里给我发消息

智乐兔官微