I/O重定向及管道

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了I/O重定向及管道相关的知识,希望对你有一定的参考价值。

打开的文件都有一个fd:file descriptor (文件描述符)
标准输入:keyborad,0
标准输出:monitor,1
标准错误输出:monitor,2

I/O重定向:改变标准位置
输出重定向:COMMAND > NEW_POS , COMMAND >> NEW_POS

:覆盖重定向,目标文件中的原有文件内容会被清除
>:追加重定向,新内容会追加至目标文件尾部
set -C :禁止将内容覆盖输出至已有文件
| :强制覆盖
set+C:撤销

        2>:覆盖重定向错误输出数据流(命令执行失败,或命令不存在)
        2>>:追加重定向错误输出流数据

        标准输出和错误输出各自定向至不同的位置:
            COMMAND > /path/to/file.out 2> /path/to/error.out
    合并标准输出和错误输出为同一个数据流进行重定向
        &>:覆盖重定向
        &>>:追加重定向

        COMMAND > /path/to/file.out  2> &1
        COMMAND >> /path/to/file.out  2>> &1

    输入重定向: <
        tr命令:转换或删除字符
            tr -d  abc :删除数据中的abc
            tr ab AB < /etc/fstab  将/etc/fstab文件中a变成A,b变成B, 输出到屏幕上

    HERE Documentation:<< 
                # cat << EOF
                                    >EOF终止
                # cat > /path/to/somefile  <<EOF

管道: |
            把前一个命令的输出结果当后一个命令的输入
        tee命令:
            将结果打到屏幕上,并保存至文件中

以上是关于I/O重定向及管道的主要内容,如果未能解决你的问题,请参考以下文章

管道及I/O重定向

linux I/O重定向及管道

随堂练习 bash shell特性和I/O重定向及管道

标准I/O重定向和管道

标准I/o重定向和管道

管道及IO重定向