zoukankan      html  css  js  c++  java
  • Linux下">/dev/null 2>&1 "相关知识说明

    在学习Linux的过程中,常会看到一些终端命令或者程序中有
    ">/dev/null 2>&1"
    出现,由于已经遇到了好几次了,为了理解清楚,不妨花点时间百度或者google一下相关的知识。

    0:表示键盘输入(stdin)
    1:表示标准输出(stdout),系统默认是1
    2:表示错误输出(stderr)
    command >/dev/null 2>&1 & == command 1>/dev/null 2>&1 &

    1)command:表示shell命令或者为一个可执行程序
    2)>:表示重定向到哪里
    3)/dev/null:表示Linux的空设备文件
    4)2:表示标准错误输出
    5)&1:&表示等同于的意思,2>&1,表示2的输出重定向等同于1
    6)1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于 "1>/dev/null"
    6)&:表示后台执行,即这条指令执行在后台运行

    1>/dev/null:表示标准输出重定向到空设备文件,也就是不输出任何信息到终端,不显示任何信息。
    2>&1:接着,标准错误输出重定向到标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件。

    这条命令的意思就是在后台执行这个程序,并将错误输出2重定向到标准输出1,然后将标准输出1全部放到/dev/null文件,也就是清空.


    所以可以看出" >/dev/null 2>&1 "常用来避免shell命令或者程序等运行中有内容输出。

  • 相关阅读:
    【模板】Sparse-Table
    UVa 11235 Frequent values
    【模板】树状数组
    UVa 1428 Ping pong
    数学技巧
    UVa 11300 Spreading the Wealth
    UVa 11729 Commando War
    UVa 11292 Dragon of Loowater
    POJ 3627 Bookshelf
    POJ 1056 IMMEDIATE DECODABILITY
  • 原文地址:https://www.cnblogs.com/joshua317/p/6651219.html
Copyright © 2011-2022 走看看