当我们想要丢弃所有输出时,正确的方法是先重定向stdout到/dev/null,然后再将stderr重定向到stdout。这样,所有的输出都不会显示在终端上。 在编写Shell脚本或执行命令时,理解和正确使用I/O流的重定向是非常重要的。它不仅可以帮助我们控制脚本的输出内容,而且还能够在需要的时候对错误信息进行适当的处理。在脚本中正确...
拯救方法就是使用 shell 提供的重定向功能将标准输出和标准错误重定向到文件,因为 init 是 fork 一个 ...
1>&2意思是把标准输出重定向到标准错误. 2>&1意思是把标准错误输出重定向到标准输出。 &>filename意思是把标准输出和标准错误输出都重定向到文件filename中. >&2即1>&2也就是把结果输出到和标准错误一样 /dev/null是一个文件,这个文件比较特殊,所有传给它的东西它都丢弃掉 标准输出和错误输出 > ls rumen...
一般在shell包括dos下都可能会这样使用。 1表示标准输出,2表示标准错误输出,2>&1表示将标准错误输出重定向到标准输出,这样,程序或者命令的正常输出和错误输出就可以在标准输出输出。 一般来讲标准输出和标准错误输出都是屏幕,那为什么还要这么用呢?原因是标准输出的重定向。你的例子是重定向到了null,如果重定向到文件...
shell通过特殊的STDERR文件描述符来处理错误消息。STDERR文件描述符代表shell的标准错误输出。重定向错误消息,可将该文件描述符值放在重定向符号前。该值必须紧紧地放在重定向符号前,否则不会工作。 将标准输出重定向到output.txt,将标准错误重定向到error。
重定向标准输出和标准错误到同一文件中,共有两种方式可以实现。首先让我们使用传统方法,它适用于老版本的shell :ls -l /bin/usr > ls-output.txt 2>&1 首先,我们将stdout重定向到ls-output.txt文件,然后用2>&1的符号将文件描述符2 stderr重定向到文件描述符1 stdout 中。需要注意重定向的顺序,重定向...
第一种也是最简单的重定向形式是输出重定向,也称为标准输出重定向。 默认情况下,命令的输出是显示在屏幕上。比如,我使用 ls 命令列出当前目录下的所有文件: 复制 [gliu@fedora work]$ lsappstxt new.txt static-ip.txt 1. 2. 通过输出重定向,可以将输出重定向到文件。如果此输出文件不存在,那么 shell 将创...
这样所有的错误输出都输送到了/dev/null,不再出现在屏幕上。 合并标准输出和标准错误 在合并标准输出和标准错误的时候,切记shell是从左至右分析相应的命令的。下面给出一个例子: $ cleanup >cleanup.out 2>&1 在上面的例子中,我们将cleanup 脚本的输出重定向到>cleanup.out文件中,而且其错误也被重定向到相同的...