首页 > 代码库 > Linux 数据重定向

Linux 数据重定向

准备工作:

我们必须了解数据重定向的输出类型,有以下3种:

  • 标准输入(stdin):代码为0,使用<(替换原先的数据)或<<(在原有的数据上累加)

  • 标准输出(stdout):代码为1,使用>(替换原先的数据)或>>(在原有的数据上累加)

  • 标准错误输出(stderr):代码为2,使用2>(替换原先的数据)或2>>(在原有的数据上累加)  




下面我做几个案例演示数据重定向的功能及使用

  1. 标准输出与标准错误输出将他们分别存在不同的文件里。                                           

    #:find /home -name .bashrc > list_right 2>list_error

    --根据以上命令的执行,屏幕上不会显示任何的信息,需要查看该命令执行后信息需要到list_right和list_error这两个文件里面进行查看。

  2. 显示正确执行信息,不要保留错误信息,/dev/null黑洞垃圾桶可以存储各种导向信息



    #find /home -name .bashrc 2> /dev/null

    --根据以上的命令的执行,屏幕只会显示正确的执行信息,而错误执行信息将会抛弃

3.将标准输出和标准标准错误输出信息保存在同一个文件里

    

    #find /home -name .bashrc >list 2>&1

    #find /home -name .bashrc &>list

   --根据以上命令的执行,我们可以到list文件里查看标准输出和标准错误输出的信息。


标准输入<或<<

接下来我们看案例演示:

  1. 通过cat命令来创建一个文件,我们之前一直使用cat命令来查看文件,接下来我们看看cat命令结合>定向创建文件

    #cat > catfile

    >catfile testing

    >cat file test

    >以上通过键盘输入数据创建文件,可使用ctrl+d来离开

  2. 通过其他文件创建相同的文件

    #cat >catfile < /etc/issue

    --我们可以查询一下这两个文件的信息,看看这两个文件的大小是否一致

  3. 通过<<关键字进行数据关键字输入后就即刻结束

    #cat > catfile <<"out"

    >This is a out.

    >OK now stop

    >out---输入关键字后会立即结束,无需使用ctrl+d退出。