成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

linux中stream的含義是什么

這篇文章主要介紹“l(fā)inux中stream的含義是什么”的相關(guān)知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強(qiáng),希望這篇“l(fā)inux中stream的含義是什么”文章能幫助大家解決問題。

我們提供的服務(wù)有:成都網(wǎng)站設(shè)計、做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、商丘ssl等。為上1000+企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的商丘網(wǎng)站制作公司

在linux中,stream是數(shù)據(jù)流的意思,就是按一定順序讀取的一串?dāng)?shù)據(jù),所以數(shù)據(jù)流的方向就是數(shù)據(jù)流的讀取順序。Linux系統(tǒng)把數(shù)據(jù)讀取后輸出的結(jié)果導(dǎo)入到其他文件中的過程稱為重定向數(shù)據(jù)流。Linux下輸入一段命令并運(yùn)行以后,屏幕里會顯示兩種結(jié)果:運(yùn)行成功結(jié)果即標(biāo)準(zhǔn)輸出、運(yùn)行失敗結(jié)果即標(biāo)準(zhǔn)錯誤輸出;如果不做處理,它們都會顯示在屏幕上,而通過數(shù)據(jù)流重定向就可將其儲存到其他的文件中。

在linux中,stream是數(shù)據(jù)流的意思。

stream(數(shù)據(jù)流)是什么意思

stream(數(shù)據(jù)流)就是按一定順序讀取的一串?dāng)?shù)據(jù),所以數(shù)據(jù)流的方向就是數(shù)據(jù)流的讀取順序。

數(shù)據(jù)流最初是通信領(lǐng)域使用的概念,代表傳輸中所使用的信息的數(shù)字編碼信號序列。這個概念最初在1998年由Henzinger在文獻(xiàn)87中提出,他將數(shù)據(jù)流定義為“只能以事先規(guī)定好的順序被讀取一次的數(shù)據(jù)的一個序列”。

Linux系統(tǒng)重定向數(shù)據(jù)流就是把數(shù)據(jù)讀取后輸出的結(jié)果導(dǎo)入到其他文件中。

Linux數(shù)據(jù)流重定向

數(shù)據(jù)流重定向簡單來說就是將某條命令的輸入數(shù)據(jù)來源或輸出數(shù)據(jù)定位到其他的文件。Linux下一切皆文件。這里的文件可以是設(shè)備文件、普通文件等。

1、stdin stdout stderr

stdin:標(biāo)準(zhǔn)輸入。指的是為命令運(yùn)行所提供的一些信息。
stdout:標(biāo)準(zhǔn)輸出。指的是命令執(zhí)行所返回的正確信息。
stderr:標(biāo)準(zhǔn)錯誤輸出。指的是命令執(zhí)行失敗后所返回的錯誤信息。

這三者與命令的關(guān)系通常如下:

stdin

stderr

stdout

File

Command

Screen/File

Screen/File

在Linux環(huán)境下,我們輸入一段命令并運(yùn)行以后,屏幕里會顯示兩種結(jié)果:運(yùn)行成功結(jié)果即標(biāo)準(zhǔn)輸出、運(yùn)行失敗結(jié)果即標(biāo)準(zhǔn)錯誤輸出。

  • 標(biāo)準(zhǔn)輸出(STDOUT): Standard output,指的是命令執(zhí)行所返回的正確信息。

  • 標(biāo)準(zhǔn)錯誤輸出(STDERR): Standard error output,指的是命令執(zhí)行所返回的錯誤信息。

如果不對STDOUT和STDERR做處理,他們都會顯示在屏幕上,通過數(shù)據(jù)流重定向就可以將其儲存到其他的文件中,而將其儲存在文件中的特殊字符有:

  • 標(biāo)準(zhǔn)輸入stin:代碼為0,使用<<<

  • 標(biāo)準(zhǔn)輸出stout:代碼為1,使用>>>

  • 標(biāo)準(zhǔn)錯誤輸出stderr:代碼為2,使用2>2>>

2、數(shù)據(jù)流重定向的使用

  • stdout:標(biāo)準(zhǔn)輸出重定向。這里重定向的是正確輸出。

find / -name '.bashrc' > ~/out_right

該命令將正確輸出定向輸入到文件~/out_right。如果~/out_right不存在,則自動創(chuàng)建。因為沒對錯誤信息處理,錯誤輸出默認(rèn)輸出到屏幕終端上,此時終端只會顯示錯誤輸出。

  • stderr:標(biāo)準(zhǔn)錯誤輸出重定向。這里重定向的是錯誤輸出。

find / -name '.bashrc' 2> ~/out_error

該命令將錯誤輸出定向輸入到文件~/out_error。如果~/out_error不存在,則自動創(chuàng)建。因為沒對正確信息處理,正確輸出默認(rèn)輸出到屏幕終端上,此時終端只會顯示正確輸出(如果沒找到指定文件,屏幕沒有輸出)。

  • stdin:一般使用標(biāo)準(zhǔn)輸入來替換鍵盤輸入。

cat > catfile < ~/.bashrc

cat命令后不接任何參數(shù),cat會從鍵盤讀取數(shù)據(jù)。使用標(biāo)準(zhǔn)輸入,將輸入來源定向到文件~/.bashrc。然后通過>將標(biāo)準(zhǔn)輸出定位到catfile文件。cat是查看文件的命令,這里直接讀取文件~/.bashrc然后將其輸出到catfile。

3、>>,2>>,<<

  • >>(累加):附加標(biāo)準(zhǔn)輸出。cmd > file1,命令cmdstdout輸出到file1中,如果fiel1此前存在,且有數(shù)據(jù),那么file1會事先被清空,然后寫入stdout。而使用命令cmd >> file1,不會預(yù)先清空file1文件,而是直接在文件末尾加上輸入的數(shù)據(jù)。

  • 2>>累加):附加標(biāo)準(zhǔn)錯誤輸出。與>>相似。

  • <<指定結(jié)束關(guān)鍵字):后接結(jié)束的輸入字符。關(guān)鍵字必須獨(dú)占一行,否則無效。

cat > catfile << "eof"  #這里關(guān)鍵字為eof
> This is a test.
> Ok now stop
> eof  #輸入eof(并回車)結(jié)束本次輸入

4、stdoutstderr統(tǒng)一處理

有時,我們需要將stdoutstderr都保存在同一個文件中一遍以后查看。

基本思路:

stderr重定向為stdout,然后通過stdout一起重定向。

如下案例:

find / -name .bashrc > list 2> list #該語句錯誤,查看生成的list,發(fā)現(xiàn)不是預(yù)期結(jié)果
find / -name .bashrc > list 2>&1 #正確
find / -name .bashrc &> list #正確

實現(xiàn)方法不止一種,我們?nèi)≥^好理解的寫法find / -name .bashrc > list 2>&1。這段代碼中的2>&1可以理解為,將標(biāo)準(zhǔn)錯誤輸出(代碼為2)重定向為標(biāo)準(zhǔn)輸出(代碼為1)。然后> list將標(biāo)準(zhǔn)輸出重定向到文件list。因為標(biāo)準(zhǔn)錯誤輸出被定向為標(biāo)準(zhǔn)輸出,所以最后所有輸出都被定向到文件list中。

關(guān)于“l(fā)inux中stream的含義是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點(diǎn)。

新聞名稱:linux中stream的含義是什么
文章路徑:http://jinyejixie.com/article16/pgsigg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作品牌網(wǎng)站設(shè)計、企業(yè)網(wǎng)站制作、網(wǎng)站導(dǎo)航、營銷型網(wǎng)站建設(shè)、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司
遂平县| 梧州市| 阿图什市| 闽侯县| 永修县| 新闻| 陆丰市| 教育| 长治市| 焦作市| 韶山市| 苍溪县| 东阳市| 杭州市| 桃园县| 巴里| 宁国市| 观塘区| 彭山县| 黑山县| 台东县| 翁源县| 额敏县| 安福县| 怀仁县| 尉氏县| 台湾省| 稷山县| 通山县| 旬阳县| 依安县| 南阳市| 乐亭县| 逊克县| 启东市| 厦门市| 曲阜市| 尼勒克县| 广丰县| 襄城县| 神农架林区|