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

一、文件描述符
Linux 的shell命令,可以通过文件描述符来引用一些文件,通常使用到的文件描述符为0,1,2。Linux系统实际上有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文件作为标准输入,以filename2文件作为标准输出
Command < filename Command命令以filename文件作为标准输入
Command << delimiter  从标准输入中读入,知道遇到delimiter分界符

绑定重定向:

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

三、shell中的一些高级用法
1:把所有的标准错误输出出到linux的 黑洞中,有称为空设备(/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"
[root@localhost ~]# cat >a.txt<<eof
> 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是Linux中一个强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。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
2、</eof
/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使用简明及正则表达式  http://www.linuxidc.com/Linux/2013-08/88534.htm

Linux下Shell编程——grep命令的基本运用 http://www.linuxidc.com/Linux/2013-06/85525.htm

grep 命令详解及相关事例 http://www.linuxidc.com/Linux/2014-07/104041.htm

Linux基础命令之grep详解 http://www.linuxidc.com/Linux/2013-07/87919.htm

设置grep高亮显示匹配项 http://www.linuxidc.com/Linux/2014-09/106871.htm

Linux grep命令学习与总结 http://www.linuxidc.com/Linux/2014-10/108112.htm

14 个 grep 命令的例子 http://www.linuxidc.com/Linux/2015-05/117626.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-04/

转载于:https://www.cnblogs.com/gered/p/8137687.html

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

  1. (转载)linux下的find文件查找命令与grep文件内容查找命令

    linux下的find文件查找命令与grep文件内容查找命令 转载于和感谢:linux下的find文件查找命令与grep文件内容查找命令 目录 1.前言 1.1 find命令和grep命令的区别 2. ...

  2. Linux输入输出重定向

    Linux 输入输出重定向的示意图如上图所示. 执行command 的时候,默认情况下,会将标准输出,标准错误都输出到屏幕上去 标准输入默认是键盘输入,但是可以将文件定向到标准输入中,幻数为0 标准输 ...

  3. python中findroot_python文件查找之find命令

    shell编程-文件查找之find命令 1.语法格式 find [路劲][选项][操作] 选项参数对照表 2.-name 查找/etc/目录下以.conf结尾的文件 find /etc/ -name ...

  4. linux 设置开机自启动 文件配置开机自启动命令

    linux 设置开机自启动 文件配置开机自启动命令 在/etc/rc.local文件中添加自启动命令 执行命令 执行脚本 在/etc/init.d目录下添加自启动脚本 运行级别设置 在/etc/rc. ...

  5. Shell文件查找之find命令(1)

    日常工作中常用到脚本,像数据备份.数据压缩等等这样一些脚本. find命令的优点:条件比较多应用场景广范,缺点:效率比较低,速度比较慢. 1.文件查找之find命令   (1) 语法格式: find ...

  6. linux下的find文件查找命令与grep文件内容查找命令(转)

    在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区别的. 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空, ...

  7. linux下的find文件查找命令与grep文件内容查找命令

    在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区的. 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访 ...

  8. linux标准输出重定向到文件夹,linux输入输出重定向使用详解

    1. 输出重定向: 默认条件下,标准输出和错误输出都是终端,可以把标准输出和错误内容进行重定向: [~]# echo "hello\!" hello\! [~]# echo &qu ...

  9. Linux 输入输出重定向 2>/dev/null和>/dev/null 2>1和2>1>/dev/nul

    From:https://www.cnblogs.com/520playboy/p/6275022.html 2>/dev/null  和  >/dev/null 2>&1  ...

  10. linux输入输出重定向详解

    Chapter 16. I/O 重定向 默认情况下始终有3个"文件"处于打开状态, (键盘), (屏幕), and (错误消息输出到屏幕上). 这3个文件和其他打开的文件都可以被重 ...

最新文章

  1. Python的lambda匿名函数
  2. .Net Core WebAPI + Axios +Vue 实现下载与下载进度条
  3. 朱邦芬院士:我所熟悉的几位中国物理学大师的为人之本
  4. Saltstack常用模块及API
  5. Apache Arrow 内存数据交换格式
  6. 用费曼学习法学习费曼学习法-读《世界上最好的学习法:费曼学习法》收获
  7. java 实现超级玛丽小游戏
  8. webkit未能加载文件或程序集WebKitBrowser
  9. Unity3D之矩阵运用
  10. 【YOLOv4原文+翻译】YOLOv4:Optimal Speed and Accuracy of Object Detection
  11. 数学基础----概率统计-----随机事件1
  12. 凤姐和她的传销币们-千氪
  13. 计算机基础题word,计算机应用基础试题(带答案)Word版
  14. Gronwall 不等式
  15. 自建cdn搭建_自建CDN
  16. 为应用程序添加图标 ios_38个美丽的iOS应用程序图标设计,激发您的灵感
  17. 第 3 章 程序的机器级表示
  18. 软件测试之使用jmeter进行压力测试
  19. c语言随机生成n个数求最小值,C语言程序:从N个数中随机取出100个不同的数
  20. hiredis的使用

热门文章

  1. 蜘蛛日志分析工具_如何分析网站日志 - 360蜘蛛池
  2. eclipse哪个版本最稳定_新版鹿鼎记开播啦,你最喜欢哪个版本?最还原原著的原来是他...
  3. 完成一个简单的时间片轮转多道程序内核代码
  4. matlab中小波工具箱下载,matlab小波工具箱小波分析步骤
  5. 【制表符\t】你不知道的制表符\t的那些事儿~
  6. python svm超参数_为了能早点买房,我用 Python 预测房价走势!
  7. matlab剪切板中内容清除,如何清空剪贴板内容?剪切板内容清理过程
  8. java中charconst_C语言常量
  9. c语言中的双周期指令,时钟周期 机器周期 指令周期的概念
  10. linux打开文件程序,linux – 获取打开特定文件的应用程序列表