📄 00000007.htm
字号:
<HTML><HEAD> <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人: hustluby (luby), 信区: Linux <BR>标 题: tcpserver问题 <BR>发信站: BBS 水木清华站 (Wed Oct 11 18:27:47 2000) <BR> <BR> <BR>tcpserver -u **** -g **** 0 smtp /var/qmail/bin/qmail-smtpd 2>&1 | splogger... <BR>∶<I> ~~~~ </I><BR>此处,2>&1 表示什么意思? <BR>如果是将错误输出重定向,则为 2> <BR>如果是将标准输出和错误输出都重定向,则为 &> <BR>那么这个2>&1呢?不是重定向,那是什么呢? <BR> <BR>请赐教,thx. <BR> <BR>-- <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 211.69.205.91] <BR>发信人: hellguard (小四), 信区: Linux <BR>标 题: Re: tcpserver问题 <BR>发信站: BBS 水木清华站 (Wed Oct 11 19:21:18 2000) <BR> <BR>意思是把stderr重定向到stdout呀。其他的你说的都对。 <BR>【 在 hustluby (luby) 的大作中提到: 】 <BR>∶<I> tcpserver -u **** -g **** 0 smtp /var/qmail/bin/qmail-smtpd 2>&1 | splogger... </I><BR>∶<I> 此处,2>&1 表示什么意思? </I><BR>∶<I> 如果是将错误输出重定向,则为 2> </I><BR>∶<I> 如果是将标准输出和错误输出都重定向,则为 &> </I><BR>∶<I> 那么这个2>&1呢?不是重定向,那是什么呢? </I><BR>∶<I> 请赐教,thx. </I><BR> <BR> <BR>-- <BR> <BR> 也许有一天,他再从海上蓬蓬的雨点中升起, <BR> 飞向西来,再形成一道江流,再冲倒两旁的石壁, <BR> 再来寻夹岸的桃花。然而,我不敢说来生,也不敢信来生...... <BR> <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 210.73.87.125] <BR>发信人: hustluby (luby), 信区: Linux <BR>标 题: Re: tcpserver问题 <BR>发信站: BBS 水木清华站 (Wed Oct 11 20:09:37 2000) <BR> <BR>试编一小段程序如下: <BR> <BR>#inlcude <stdio.h> <BR>int main() <BR>{ <BR> fprintf(stderr, "I'm wrong!\n"); <BR> fprintf(stdout, "I'm right!\n"); <BR>} <BR> <BR>编译后运行 ./a.out 2>&1 >1.txt <BR> <BR>如果如你所说,那么这应该表示把stderr重定向到stdout, <BR>之后是否表示再将stdout重定向到1.txt? <BR>如果是这样,1.txt中应为:I'm wrong! <BR> I'm right! <BR>可是为何实际该文件中仅有 I'm right! <BR>而在屏幕上却输出了I'm wrong! <BR>thx!!! <BR> <BR>【 在 hellguard (小四) 的大作中提到: 】 <BR>∶<I> 意思是把stderr重定向到stdout呀。其他的你说的都对。 </I><BR> <BR> <BR>-- <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 211.69.205.91] <BR>发信人: flyriver (江~~麦嘎得), 信区: Linux <BR>标 题: Re: tcpserver问题 <BR>发信站: BBS 水木清华站 (Wed Oct 11 20:17:10 2000) <BR> <BR> <BR>【 在 hustluby (luby) 的大作中提到: 】 <BR>∶<I> 试编一小段程序如下: </I><BR>∶<I> #inlcude <stdio.h> </I><BR>∶<I> int main() </I><BR>∶<I> { </I><BR>∶<I> fprintf(stderr, "I'm wrong!\n"); </I><BR>∶<I> fprintf(stdout, "I'm right!\n"); </I><BR>∶<I> } </I><BR>∶<I> 编译后运行 ./a.out 2>&1 >1.txt </I><BR> <BR> ./a.out > 1.txt 2>&1 <BR> <BR>∶<I> 如果如你所说,那么这应该表示把stderr重定向到stdout, </I><BR>∶<I> 之后是否表示再将stdout重定向到1.txt? </I><BR>∶<I> 如果是这样,1.txt中应为:I'm wrong! </I><BR>∶<I> ................... </I><BR> <BR>-- <BR> Nothing but UNIX. <BR> <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 166.111.67.183] <BR>发信人: prentice (嘿嘿), 信区: Linux <BR>标 题: Re: tcpserver问题 <BR>发信站: BBS 水木清华站 (Wed Oct 11 20:20:40 2000) <BR> <BR>请问哪里有qmail的原代码。qmail-1.03.tgz好象没有原代码 <BR>谢谢 <BR>【 在 flyriver (江~~麦嘎得) 的大作中提到: 】 <BR>∶<I> ./a.out > 1.txt 2>&1 </I><BR> <BR> <BR>-- <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 211.69.206.187] <BR>发信人: cybergene (基因~十月的天空~~), 信区: Linux <BR>标 题: Re: tcpserver问题 <BR>发信站: BBS 水木清华站 (Wed Oct 11 20:33:32 2000) <BR> <BR>【 在 prentice (嘿嘿) 的大作中提到: 】 <BR>∶<I> 请问哪里有qmail的原代码。qmail-1.03.tgz好象没有原代码 </I><BR>∶<I> 谢谢 </I><BR> <BR>那就是辕马。 <BR> <BR>-- <BR>******************************************************************** <BR> I came, I saw, and I deleted all your files... <BR>******************************************************************** <BR> <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 202.204.7.234] <BR>发信人: hustluby (luby), 信区: Linux <BR>标 题: Re: tcpserver问题 <BR>发信站: BBS 水木清华站 (Wed Oct 11 20:39:30 2000) <BR> <BR>thx,I got the intended result. <BR> <BR>but, 当我安装vpopmail时,其安装文件里有这样一行: <BR>/home/vpopmail/bin/clearopensmtp 2>&1 > /dev/null <BR> <BR>why? what does it mean? <BR>如果要将错误输出与标准输出都定向到/dev/null, <BR>为什么不用 ... > /dev/null 2>&1 呢? <BR> <BR>【 在 flyriver (江~~麦嘎得) 的大作中提到: 】 <BR>∶<I> ./a.out > 1.txt 2>&1 </I><BR> <BR> <BR>-- <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 211.69.205.91] <BR>发信人: scaner (L3), 信区: Linux <BR>标 题: Re: tcpserver问题 <BR>发信站: BBS 水木清华站 (Wed Oct 11 22:18:29 2000) <BR> <BR>><I> |两个优先极是不一样了. </I><BR>【 在 flyriver (江~~麦嘎得) 的大作中提到: 】 <BR>∶<I> ./a.out > 1.txt 2>&1 </I><BR> <BR> <BR>-- <BR>一杯酒, 一首歌, 一辈子, 一场梦 <BR> <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 202.205.10.77] <BR>发信人: flyriver (江~~麦嘎得), 信区: Linux <BR>标 题: Re: tcpserver问题 <BR>发信站: BBS 水木清华站 (Wed Oct 11 22:39:50 2000) <BR> <BR>【 在 hustluby (luby) 的大作中提到: 】 <BR>∶<I> thx,I got the intended result. </I><BR>∶<I> but, 当我安装vpopmail时,其安装文件里有这样一行: </I><BR>∶<I> /home/vpopmail/bin/clearopensmtp 2>&1 > /dev/null </I><BR>∶<I> why? what does it mean? </I><BR>∶<I> 如果要将错误输出与标准输出都定向到/dev/null, </I><BR>∶<I> 为什么不用 ... > /dev/null 2>&1 呢? </I><BR> <BR> 一般来说错误信息都是从stderr输出的。教本里面的那 <BR>句话的意思是先把stderr定向到stdout,而仅仅把stdout定 <BR>向到/dev/null。于是你只看到错误信息,而且是从stdout <BR>出来的错误信息。至于为什么这样做,可能是为了进一步的 <BR>重定向用途吧。例如你可以用grep对输出的错误信息进行筛 <BR>选。 <BR> <BR>举个例子。 <BR> <BR>$ cat hehe.sh <BR>#!/bin/sh <BR>echo "stdout" <BR>echo "stderr output" >&2 <BR> <BR>$ ./hehe.sh 2>&1 >/dev/null <BR>stderr output <BR>$ ./hehe.sh 2>&1 >/dev/null | wc - <BR> 1 2 14 - <BR> <BR> 重定向的原理也不复杂,就是一个dup2()调用而已。 <BR> <BR>-- <BR> Nothing but UNIX. <BR> <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 166.111.67.183] <BR>发信人: hellguard (小四), 信区: Linux <BR>标 题: Re: tcpserver问题 <BR>发信站: BBS 水木清华站 (Thu Oct 12 12:14:21 2000) <BR> <BR>重定向的顺序问题 <BR> <BR>2>&1 1> out.txt 和 1> out.txt 2>&1 不一样。 <BR>shell在解释执行的时候,有区别,后一种方式导致stdout、stderr最 <BR>终重定向到了out.txt,前一种方式仅仅是stdout重定向到out.txt。 <BR>【 在 hustluby (luby) 的大作中提到: 】 <BR>∶<I> 试编一小段程序如下: </I><BR>∶<I> #inlcude <stdio.h> </I><BR>∶<I> int main() </I><BR>∶<I> { </I><BR>∶<I> fprintf(stderr, "I'm wrong!\n"); </I><BR>∶<I> fprintf(stdout, "I'm right!\n"); </I><BR>∶<I> } </I><BR>∶<I> 编译后运行 ./a.out 2>&1 >1.txt </I><BR>∶<I> 如果如你所说,那么这应该表示把stderr重定向到stdout, </I><BR>∶<I> 之后是否表示再将stdout重定向到1.txt? </I><BR>∶<I> 如果是这样,1.txt中应为:I'm wrong! </I><BR>∶<I> ................... </I><BR> <BR>-- <BR> <BR> 也许有一天,他再从海上蓬蓬的雨点中升起, <BR> 飞向西来,再形成一道江流,再冲倒两旁的石壁, <BR> 再来寻夹岸的桃花。然而,我不敢说来生,也不敢信来生...... <BR> <BR> <BR>※ 来源:·BBS 水木清华站 smth.org·[FROM: 210.73.87.125] <BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -