glob及IO重定向

globbing: 文件名通配

    匹配模式:元字符

          *:匹配任意长度的任意字符

   pa* ,*pa* ,*pa,  *p*a*

   pa, paa, passwd

   ?:  匹配任意单个字符

   pa?

    pa,  paa  符合     passwd不符

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

   有几种特殊格式; [a-z],[A-z],[a-z0-9]

   [[:upper:]]所有大写字母

   [[:lower:]]:所有小写字母

   [[:alpha:]]:所有字母

   [[:digit]]:所有数字

   [[:alnum:]]:所有字母和数字

   [[punct:]]:所有标点符号

   pa[0-9][0-9],z[0-9][0-9]

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

   [^[:upper:]]:大写字母以为的任意字符

   [^0-9]

   [^[:alnum:]]

练习一:显示/var目录所有以1开头,以一个小写字母结尾,且中间出现一位任意字符的文件或目录

    ls -d /var/?[[:lower:]] 

练习二:显示/etc目录下,以任意一位数字开头,且以非数字结尾的文件或目录:

   ls -d /etc/[0-9]*[^0-9]

练习三:显示/etc目录下,以非字母开头,后面跟一个字母及其他任意长度任意字符符文件或目录

    ls -d/etc/[^a-z][a-z]*

练习四:复制/etc目录下,所有以m开头,以非数字结尾的文件或目录至/tmp/magedu.com 目录下;

   rm /etc/8eabc 

   cp -r /etc/m*[*0-9] /tmp/magedu.com 练习五:复制/usr/share/man  目录下,所有以man开头,后跟一个数字结尾的文件或目录至/tmp/man/目录下:

    cp -r /usr/share/man/man[0-9] /tmp/man/

练习6:复制/etc目录下,所有以.conf结尾,且以m,n,r,p开头的文件或目录至/tmp/conf.d/目录下;

cp -r /etc/[mnrp]*.conf /tmp/conf.d/

  

IO重定向及管道

          程序:指令+数据

                   程序:IO

可用输入的设备:文件

        键盘设备,文件系统上的常规文件,网卡等;

可输出设备:文件

       显示器,文件系统上的刹那贵文件,网卡等;

程序是数据流有三种:

输入的数据流:<—-标准输入(stdin),键盘

输出的数据流,——->标准输出    显示器

fd:file descriptor, 文件描述符

      标准输入:0

      标准输出:1

       错误输出:2

IO 重定向: 

       输出重定向:>

            特性:覆盖输出       危险!!

       输出重定向》 特性:追加输出

            # set -c  

  禁止覆盖输出重定向至已存在的文件

           # set  +c

  关闭上述特性

      错误输出流重定向:2>, 2>>

      合并正常输出流和错误输出流,(1)  &>,&>> 

(2)COMMAND >/path/to/somefile z>&1

     COMMAND >> /path/to/somefile 2>&

     特殊设备:/dev/null

     输入重定向:<

 tr [OPTION]….SET1 [SET2]

   把输入的数据当中的字符,凡是在SET1定义范围内出现的,通通对位转换为SET2出现的字符

    tr  abc  ABC        

用法1: tr SET1 SET2  < /PATH/FROM/SOMEFILE

用法2: tr -d SET1 < /PATH/FROM/SOMEFILE

    注意:不修改源文件

Here Document:<<

          cat << EOF

           cat > /PATH/TO/SOMEFILE << EOF

管道:连接程序,实现将前一个面临的输出直接定向后一个程序当作输入数据流

     COMMAND1  | COMMAND2 | COMMAND3|……

    tee命令:

     COMMAND | tee / PATH/TO/SOMEFILE 

练习1:把/etc/passwd文件的前6行的信息转换为大写字符后输出

    head -n  6 /etc/passwd | tr 'a-z' 'A-Z'

命令总结   trtee

原创文章,作者:shadow,如若转载,请注明出处:http://www.178linux.com/64441

(0)
shadowshadow
上一篇 2016-12-21 21:33
下一篇 2016-12-21 21:48

相关推荐

  • 企业实时同步方案—-Rsync+Sersync

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://nolinux.blog.51cto.com/4824967/1433623     在博文企业实时同步方案—-Sersync介绍中我们详细介绍了Sersync的原理,设计架构以及…

    Linux干货 2015-03-30
  • 第十七周 作业–结合图形描述lvs原理

        LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。   Lvs有三种模式分别是lvs-nat、lvs-dr、lvs-tun。下面分别介绍lvs-nat、lvs-dr…

    Linux干货 2016-12-07
  • Zabbix 新版微信告警 [2017]

    Zabbix 新版微信告警 Zabbix 新版微信告警 date 2017-06-14zabbix Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信息推送到接收人,方便告警的及时处理。 关于邮件报警可以参考: Zabbix 使用脚本发送…

    2017-06-17
  • Linux发展史

    简 述 Linux是一套自由加开放源代码的类Unix操作系统,诞生于1991年10月5日(第一次正式向外公布),由芬兰学生Linus Torvalds和后来陆续加入的众多爱好者共同开发完成。 Linux是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议,可支持32位和64位硬件。…

    2016-10-14
  • 文本处理三剑客之grep

    文本处理三剑客之grep 正则表达式(regex) 文本处理工具 grep egrep 试验环境:CentOS 7.2 正则表达式 Linux的哲学之一“一切皆文件”,学习Linux应得掌握其基本的文本处理工具,这些工具主要包括: 文件内容:less和cat 文件截取:head和tail 文件抽取:cut 关键字搜索:grep 正则表达式是计算机科…

    Linux干货 2016-08-07
  • Linux网络属性配置—ifcfg命令家族

    ifcfg命令家族:ifconfig,route,netstat 1、NAME               ifconfig – configure a network interface       SYNOPSIS   &n…

    Linux干货 2016-11-27