linux重定向

linux重定向:
0、1和2分别表示标准输入、标准输出和标准错误信息输出,可以用来指定需要重定向的标准输入或输出。
在一般使用时,默认的是标准输出,既1.当我们需要特殊用途时,可以使用其他标号。例如,将某个程序的错误信息输出到log文件中:./program 2>log。这样标准输出还是在屏幕上,但是错误信息会输出到log文件中。
另外,也可以实现0,1,2之间的重定向。2>&1:将错误信息重定向到标准输出。
Linux下还有一个特殊的文件/dev/null,它就像一个无底洞,所有重定向到它的信息都会消失得无影无踪。这一点非常有用,当我们不需要回显程序的所有信息时,就可以将输出重定向到/dev/null。

如果想要正常输出和错误信息都不显示,则要把标准输出和标准错误都重定向到/dev/null, 例如:

# ls 1>/dev/null 2>/dev/null

还有一种做法是将错误重定向到标准输出,然后再重定向到 /dev/null,例如:

# ls >/dev/null 2>&1

注意:此处的顺序不能更改,否则达不到想要的效果,此时先将标准输出重定向到 /dev/null,然后将标准错误重定向到标准输出,由于标准输出已经重定向到了/dev/null,因此标准错误也会重定向到/dev/null,于是一切静悄悄:-)

由于使用nohup时,会自动将输出写入nohup.out文件中,如果文件很大的话,nohup.out就会不停的增大,这是我们不希望看到的,因此,可以利用/dev/null来解决这个问题。

nohup ./program >/dev/null 2>log &

如果错误信息也不想要的话:

nohup ./program >/dev/null 2>&1 &

时间: 2024-11-06 22:34:06

linux重定向的相关文章

Linux重定向介绍及实例

   Linux重定向 程序:指令+数据 读入数据: Input 输出数据: Output 打开的文件都有一个fd: file descriptor (文件描述符) Linux给程序提供三种I/O设备 标准输入( STDIN)   0  默认接受来自键盘的输入 标准输出( STDOUT)     1     默认输出到终端窗口 标准错误( STDERR)      2     默认输出到终端窗口 [[email protected] /testdir]# ll /dev/std* lrwxrwx

Linux重定向相关(转载帖,供自己cookbook)

Linux重定向是指修改原来默认的一些东西,对原来系统命令的默认执行方式进行改变,比如说简单的我不想看到在显示器的输出而是希望输出到某一文件中就可以通过Linux重定向来进行这项工作.  Linux默认输入是键盘,输出是显示器.你可以用重定向来改变这些设置.比如用wc命令的时候本来是要手动输入一篇文字来计算字符数的,用了重定向后可以直接把一个已经写好的文件用‘<’指向这条命令,就直接可以统计这个文件的字符数等了.输出也是一样,你可以把屏幕输出重定向到一个文件里,再到文件里去看结果.重定向操作符可

使用Linux重定向解决nohup.out无写权限问题

■场景 执行nohup命令的时候,经常会出现下面这种没有写入权限的错误. nohup: ignoring input and appending output to `nohup.out'nohup: failed to run command `/etc/nginx_check.sh': Permission denied ■linux重定向: 0.1和2分别表示标准输入.标准输出和标准错误信息输出,可以用来指定需要重定向的标准输入或输出. 在一般使用时,默认的是标准输出,既1.当我们需要特殊

linux重定向及nohup不输出的方法

转载链接:http://blog.csdn.net/geekster/article/details/6657620 from http://hi.baidu.com/zhaolegend/blog/item/245ad226e860bdfed7cae2ed.html 先说一下linux重定向: 0.1和2分别表示标准输入.标准输出和标准错误信息输出,可以用来指定需要重定向的标准输入或输出.在一般使用时,默认的是标准输出,既1.当我们需要特殊用途时,可以使用其他标号.例如,将某个程序的错误信息输

Linux重定向命令

linux重定向命令应用及语法  [复制链接] 发表于 2008-12-18 18:24 | 来自  51CTO网页 [只看他] 楼主 1. 标准输入的控制语法:命令 文件将命令的执行结果送至指定的文件中.例如:ls -l > list 将执行“ls -l” 命令的结果写入文件list 中.语法:命令>! 文件将命令的执行结果送至指定的文件中,若文件已经存在,则覆盖.例如:ls -lg >! list 将执行“ls - lg” 命令的结果覆盖写入文件list 中.语法:命令>&am

Linux运维学习历程-第六天-Linux重定向和管道

本章内容我们将学习linux中的重定向和管道两大用法 I/O输入与输出设备 重定向 管道 tee命令与tr命令 一.I/O设备 1.什么是I/O设备 管理和控制计算机的所有输入/输出(I/O)设备是操作系统的主要功能之一,主要分为字符设备和块设备.一般由机械和电子两个部分组成. 功能介绍 输入/输出(Input /Output ,简称I/O),指的是一切操作.程序或设备与计算机之间发生的数据传输过程. 输入/输出系统(Input/Output System) ,指控制计算机数据流动的体制,包括程

Linux重定向及用户和组管理

一.bash的I/O重定向及管道 1.Linux下一般缺省的输入称之为标准输入,即键盘输入,缺省的输出称之为标准输出,即显示器输出.Linux给程序提供了三种I/O设备: 标准输入(STDIN)--0:默认接受来自键盘的输入 标准输出(STDOUT)--1:默认输出到终端窗口 标准错误(STDERR)--2:默认输出到终端窗口 I/O重定向即改变默认位置. 输出重定向常用语法: CMD > file:把STDOUT重定向到file文件中,原有文件内容会被覆盖: CMD >> file:在

linux重定向和管道的使用

bash的I/O重定向及管道 程序是由程序+指令组成:或者是数据结构+算法 程序数据来自哪里,处理的结果又存放于哪里? 程序必须能够读入输出然后经过加工来产生结果:程序获取的数据可以使数据也可以hi变量.数据.列表文件等等,程序生产出来的结果可以是变量.数据.列表.文件等.也就是说,程序都有读入数据和输入数据的需求. 读入数据:Input 输出数据:Output 通常对于程序来说,输入输出数据可以是键盘.鼠标.显示器等:当然有时候输入的数据是程序自身内部所具有的,但我们认为这些数据应该是通过外部

Linux 重定向与管道

标准输出重定向 ">" 操作符:覆盖目标文件内容 [email protected]:~/huey/linux/cmdline$ date > foo [email protected]:~/huey/linux/cmdline$ cat foo Fri May 8 09:55:42 CST 2015 ">>" 操作符:在目标文件尾部追加输出内容 [email protected]:~/huey/linux/cmdline$ date >