码迷,mamicode.com
首页 > 其他好文 > 详细

glob和IO重定向详细讲义

时间:2016-07-30 15:14:44      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:定向

globbing:文件名通配

 匹配模式:元字符

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

   技术分享

   ?:表示任意单个字符

   技术分享

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

     有几种特殊模式:

     [a-z],[A-Z],[0-9],[a-z0-9]

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

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

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

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

     [[:space:]]:所有空白字符

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

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

     [^[:upper:]]:匹配不是大写字母的

     [^0-9]:匹配不是数字的

 例:显示/var目录下以l开头,以小写字母结尾,中间跟一位任意字符的目录或文件。

    技术分享

   显示/testdir/目录下,以任意一位数字开头,且以非数字结尾的问件或目录

     技术分享

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

ls -d /etc/[^[:alpha:]][[:alpaha:]]*


IO重定向及管道

 程序:指令+数据

    程序:IO

   可用于输入的设备:键盘

   可用于输出的设备:显示器

 程序的数据流有三种:

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

  输出的数据流:-->标准输出 (stdout,显示器,准确的说是用户终端控制台),

  错误的数据流:--> 标准错误输出(stderr)是由解释器辅助的数据流

 

 fd:file descriptor,文件描述符

  标准输入:0

  标准输出:1

  错误输出:2  (不要搞错,你搞错,就很2.)


IO重定向:

  输出重定向:>

   特性:覆盖输出,技术分享

 

   输出重定向:>>

   特性:追加输出,

   技术分享

 注意:set命令可以控制覆盖重定向,

     -C:文件存在时,禁止覆盖输出重定向e

     +C:开启覆盖重定向

    要想强制覆盖输出重定向就用: >|

   

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

  合并正常输出流和错误输出流:&> &>>  (2>&1)unix血脉正统高贵兼容性强

   (1)&>, &>>

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

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

技术分享

技术分享

输入重定向:<


tr命令:删除或替换

 tr [OPTION]... SET1 [SET2]

 对位的模式

 技术分享

here Document:<<  此处文档

 cat < 显示在屏幕上

 cat < /path/to/somefile/ <<EOF 输出到文件中

管道:连接程序,实现将前一个命令的结果用作后一个命令输出;

技术分享


glob和IO重定向详细讲义

标签:定向

原文地址:http://11010820.blog.51cto.com/11000820/1831983

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