亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 9299 | 回復(fù): 10
打印 上一主題 下一主題

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2004-10-28 16:33 |只看該作者 |倒序?yàn)g覽
在POSIX shell中,命令的結(jié)果可以通過%>的形式來定義(其中%表示文件描述符:1為標(biāo)準(zhǔn)輸出stdout、2為標(biāo)準(zhǔn)錯誤stderr)!系統(tǒng)默認(rèn)%值是1,也就是1>,而1>可以簡寫為>,也就是默認(rèn)為>。而stdout的默認(rèn)目標(biāo)是終端(這點(diǎn)不用驗(yàn)證吧)。另外,stderr的默認(rèn)目標(biāo)我個人認(rèn)為也是終端,比如:
#abcddcba
sh: abcddcba: not found.
錯誤信息顯示在終端上(對于telnet、dtterm等,那就說虛擬終端了)。

==============實(shí)驗(yàn)環(huán)境==============
#mkdir redtest
#cd redtest
#mkdir a4
#touch a1 a2 a3

==============簡單試驗(yàn)==============
#ls >redout.lst (等同于ls 1>redout.lst,標(biāo)準(zhǔn)輸出重定向)
系統(tǒng)先執(zhí)行>redout.lst,生成一個空文件,然后系統(tǒng)執(zhí)行l(wèi)s,再把結(jié)果重定向到redout.lst。這時在終端看不到任何信息,但是#more redout.lst可以看到a1、a2、a3、a4和redout.lst。
#./ourgame 2>rederr.lst (標(biāo)準(zhǔn)錯誤重定向)
因?yàn)橄到y(tǒng)找不到執(zhí)行腳本ourgame,產(chǎn)生錯誤,但并不是顯示在終端上,而是把錯誤信息重定向到了rederr.lst。
#more rederr.lst
sh: ourgame: not found.
==============組合試驗(yàn)==============
#rm rederr.lst
#rm redout.lst
#vi conj
#!/usr/bin/sh
#Email:webmaster@myhpux.com
for FN in `ls`
do
if [[ -f $FN ]]
then
echo $FN
else
cp $FN $FN.new
fi
done
//conj的作用是執(zhí)行以后產(chǎn)生標(biāo)準(zhǔn)輸出(echo)和標(biāo)準(zhǔn)錯誤(cp)
#chmod 755 conj
看看一下命令的結(jié)果:
#./conj
a1 //stdout
a2 //stdout
a3 //stdout
cp: a4: is a directory. Need "-R" option.//stderr
conj //stdout
再試試重定向的結(jié)果:
(1)、輸出重定向到文件a1,終端上只能看到標(biāo)準(zhǔn)錯誤:
#./conj >a1
#./conj 1>a1
#more a1
a1
a2
a3
conj
(2)、錯誤重定向到文件a1,終端上只能看到標(biāo)準(zhǔn)輸出:
#./conj 2>a1
#more a1
cp: a4: is a directory. Need "-R" option.
(3)、把標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤都重定向到a1,終端上看不到任何信息:
#./conf >a1 2>&1 (等同于#./conf 1>a1 2>&1)
#more a1
a1
a2
a3
cp: a4: is a directory. Need "-R" option.
conj
//其中&的意思,可以看成是“The same as”、“與...一樣”的意思。本例中就是2>和1>一樣,都輸出到a1中。
再看一個例子:
#./conj 2>&1 >a1
同樣可以解釋為2>和1>一樣,但是這時1>是系統(tǒng)默認(rèn)輸出到終端,所以標(biāo)準(zhǔn)錯誤也輸出到終端;然后,系統(tǒng)把標(biāo)準(zhǔn)輸出重定向到文件a1。

論壇徽章:
1
榮譽(yù)會員
日期:2011-11-23 16:44:17
2 [報(bào)告]
發(fā)表于 2004-10-28 19:19 |只看該作者

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋

頂一個!不錯!!!

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2004-10-28 22:31 |只看該作者

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋

以下是《UNIX環(huán)境高級編程》對 2>&1 的解釋:

a.out > outfile 2>&1
    首先設(shè)置標(biāo)準(zhǔn)輸出到outfile,然后執(zhí)行dups將標(biāo)準(zhǔn)輸出復(fù)制到描述符2(標(biāo)準(zhǔn)錯誤)上,其結(jié)果是將標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤設(shè)置為相同的文件,即描述符1和2指向相同的文件表項(xiàng)。而對于命令行
a.out 2>&1 >outfile
    由于首先執(zhí)行dups,所以描述符2成為終端(假設(shè)命令是交互執(zhí)行的),標(biāo)準(zhǔn)輸出重定向到outfile。結(jié)果是描述符1指向outfile的文件表項(xiàng),描述符2指向終端的文件表項(xiàng)。

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2004-10-29 09:10 |只看該作者

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋

樓主,幫你頂一個!

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2004-10-29 09:31 |只看該作者

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋

謝謝烈火兄和JACK兄.哈哈.我自己也來頂一下.希望對大家有幫助.

論壇徽章:
1
榮譽(yù)會員
日期:2011-11-23 16:44:17
6 [報(bào)告]
發(fā)表于 2004-10-29 11:39 |只看該作者

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋

好文不頂,是犯罪呀!!!

論壇徽章:
0
7 [報(bào)告]
發(fā)表于 2004-10-29 11:45 |只看該作者

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋

我看明白了,倆人串通的!互頂~~~

不頂白不頂~~~(下不為例)

論壇徽章:
0
8 [報(bào)告]
發(fā)表于 2004-10-29 11:49 |只看該作者

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋

一定要定,不頂都不好意思了。

論壇徽章:
0
9 [報(bào)告]
發(fā)表于 2004-10-29 15:37 |只看該作者

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋

原帖由 "xchen301" 發(fā)表:
我看明白了,倆人串通的!互頂~~~

不頂白不頂~~~(下不為例)

這你也看得出來,我服了你.

論壇徽章:
0
10 [報(bào)告]
發(fā)表于 2004-10-29 16:12 |只看該作者

關(guān)于>&2、2>&1等重定向的詳細(xì)解釋

頂一下,前不久剛看,鞏固一下。哈
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP