linux输出重定向到文件命令,linux中怎么实现重定向2?

linux输出重定向到文件命令目录

如何将标准错误输出重定向到文件

linux中怎么实现重定向2?

linux任意执行一条指令,将其输出和错误信息定向到test3文件中

如何将标准错误输出重定向到文件

Linux下默认有两种输出流:1 - 标准输出流2 - 标准错误输出流Linux下一切皆文件,这里的1和2表示的就是输出设备文件的文件描述符。

默认情况下,无论是标准输出还是标准错误输出,都是输出到终端显示的。

但也可以通过重定向输出到其他地方,如文件。

这就是输出重定向。

并且,这两种输出流可以被分别重定向。

下面举例:假设文件file.txt在当前目录下并不存在,执行下面的命令:ls file.txt 2>log.txt这样就将错误输出重定向到文件log.txt中。

ls file.txt 2>/dev/null这样就什么都看不到,将标准错误输出流重定向到/dev/null中,丢弃了。

ls file.txt >/dev/null只将标准输出重定向到/dev/null中,这样仍然可以在终端窗口看到错误输出。

注:>/dev/null 等同于 1>/dev/null,前面的1可省略。

linux中怎么实现重定向2?

在您实现输出的那行命令后面加上>、>>、<、<<、2>、2>>来实现重定向。

>是每一次重定向时将原先的内容先删除然后写入新的数据。

>>是每一次重定向时将新的内容加入到就内容的后面。

<是将指定文件内容重定向到相关命令或者文件中,同时每次执行时先删除旧的再加入新的。

<<作用同上,只是将新的信息加到旧的信息后面。

2>是将命令执行报错时,将错误信息重定向至指定文件,并且每次执行都会先删除旧的再加入新的。

2>>和上面一条命里作用一样,只是将新的错误信息加到原来信息的后面

举例:

1.ls /etc/passwd > user

2.ls /etc/passwd >> user

3.ls idjsoigjs > test

4.ls idjsoigjs >> test

5. mail 用户名 -s "邮件题目" < file (file是你建的一个文件,里面内容随意自己定)

然后输入 mail 可以看到自己有封邮件题目为(您自定义的名字),输入相应的数字,您可以按到信件内容为file内容,这就是利用重定向直接将已写好的信件内容发送出去。

至于1-4的结果,楼主可在输入完后自行查看user和test的变化来进行对比。

对照刘遄老师的《Linux就该这么学》

linux任意执行一条指令,将其输出和错误信息定向到test3文件中

tar cvf /tmp/test.tar *.c >test3 2>&1将当前目录下的所有C文件打成tar包。

若当前目录下不存在后缀名为.c的文件,则会产生错误信息,否则输出正常的打包信息。

2表示标准错误输出,1表示标准输出。

>test3 相当于 1>test3,即默认只重定向标准输出。

2>&1 则将标准错误输出糅合到标准输出中,这样就能一起重定向了。 (随机推荐阅读本站500篇优秀文章点击前往:500篇优秀随机文章)

来源:本文由易搜IT博客原创撰写,欢迎分享本文,转载请保留出处和链接!