美文网首页
note_5.1_通配及IO重定向

note_5.1_通配及IO重定向

作者: 人間失格_430b | 来源:发表于2019-01-14 22:09 被阅读0次

globbing:文件名通配

匹配模式 元字符
* 任意长度的任意字符
任意单个字符
[] 指定范围内的任意单个字符
[a-z], [A-Z], [0-9], [a-z0-9]
[[:upper:]]:所有大写字母
[[:lower:]]:所有小写字母
[[:alpha:]]:所有字母
[[:digit:]]:所有数字
[[:alnum:]]:所有字母和数字
[[:space:]]:所有空白字符
[[:punct:]]:所有标点符号
[^] 指定范围外的任意单个字符
[^[:upper:]]
[^0-9]
[^[:alnum:]]

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

l?[[:lower:]]

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

[0-9]*[^0-9]

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

[^[:alpha:]][[:alpha:]]*

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

        cp -r /etc/m*[^0-9] /tmp/test/

练习5:复制/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),键盘;
  • 输出的数据流:--> 标准输出(stdout),显示器;
  • 错误输出流: --> 错误输出(stderr),显示器;
fd: file descriptor,文件描述符
  • 标准输入:0
  • 标准输出:1
  • 错误输出:2

IO重定向

输出重定向:>
  特性:覆盖输出
输出重定向:>>
  特性:追加输出

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

# set -C
  禁止覆盖输出重定向至已存在的文件;
  此时可使用强制覆盖输出:>|
# set +C
  关闭上述特性
仅当前有效


合并正常输出流和错误输出流:

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

            特殊设备:/dev/null

输入重定向:<

tr命令:
tr [OPTION]... SET1 [SET2]

  tr SET1 SET2 < /PATH/FROM/SOMEFILE
  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'

相关文章

  • note_5.1_通配及IO重定向

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

  • Linux之bash

    bash的基础特性之 IO重定向及管理 ] IO重定向: 输入重定向: 管道 bash基础特性之自动补充命令 ba...

  • IO重定向及管道

    1.IO重定向 (1)可用于输入的设备:文件(键盘设备、磁盘、网卡等)(2)可用于输出的设备:文件(显示器、磁盘、...

  • IO重定向及管道

    tr,tee 程序的IO 简单的说程序由指令(命令)和数据(操作对象)组成,在linux上一切皆文件,程序操作对象...

  • Linux系统介绍(四)IO重定向与管道

    IO重定向(IO redirection) Linux的有一个强大之处就是可以通过管道(Pipe)跟IO重定向将一...

  • IO重定向及管道009

    程序=指令+数据 程序的输入流有三种:标准输入流(stdin): 键盘等;标准输出流(stout): 显示器;错误...

  • Vim、Shell小结

    管道符、重定向 管道符 "|":将前一个命令的标准输出当作后一个命令的标准输入 输入输出重定向:>与< 命令行通配...

  • 【glob及IO重定向(01)】笔记

    bash的基础特性 globbing:文件名通配(整体文件名匹配,非局部文件名匹配)匹配模式:元字符 * :匹配任...

  • IO重定向

    文件描述符 将标准输入重定向, 文件描述和>或>>之间不能存在空格 将标准输出和错误输出输出到同一个文件,绑定按照...

  • 第二周作业5.9

    1、总结cp、move命令的用法(要求列出源及目标各种情况的表格) 2、总结IO重定向的类别和区别。 答:分为标准...

网友评论

      本文标题:note_5.1_通配及IO重定向

      本文链接:https://www.haomeiwen.com/subject/ocojdqtx.html