精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Bash中的&符號(hào)和文件描述符

系統(tǒng) Linux
了解如何將 “&” 與尖括號(hào)結(jié)合使用,并從命令行中獲得更多信息。在我們探究大多數(shù)鏈?zhǔn)?Bash 命令中出現(xiàn)的所有的雜項(xiàng)符號(hào)(&、|、;、>、<、{、[、(、)、]、} 等等)的任務(wù)中,我們一直在仔細(xì)研究 & 符號(hào)。

[[258823]]

了解如何將 “&” 與尖括號(hào)結(jié)合使用,并從命令行中獲得更多信息。

在我們探究大多數(shù)鏈?zhǔn)?Bash 命令中出現(xiàn)的所有的雜項(xiàng)符號(hào)(&|;><{[()]} 等等)的任務(wù)中,我們一直在仔細(xì)研究 & 符號(hào)

上次,我們看到了如何使用 & 把可能需要很長(zhǎng)時(shí)間運(yùn)行的進(jìn)程放到后臺(tái)運(yùn)行。但是, 與尖括號(hào) < 結(jié)合使用,也可用于將輸出或輸出通過(guò)管道導(dǎo)向其他地方。

在 前面的 尖括號(hào)教程中,你看到了如何使用 >,如下:

  1. ls > list.txt

ls 輸出傳遞給 list.txt 文件。

現(xiàn)在我們看到的是簡(jiǎn)寫(xiě):

  1. ls 1> list.txt

在這種情況下,1 是一個(gè)文件描述符,指向標(biāo)準(zhǔn)輸出(stdout)。

以類似的方式,2 指向標(biāo)準(zhǔn)錯(cuò)誤輸出(stderr):

  1. ls 2> error.log

所有錯(cuò)誤消息都通過(guò)管道傳遞給 error.log 文件。

回顧一下:1> 是標(biāo)準(zhǔn)輸出(stdout),2> 是標(biāo)準(zhǔn)錯(cuò)誤輸出(stderr)。

第三個(gè)標(biāo)準(zhǔn)文件描述符,0< 是標(biāo)準(zhǔn)輸入(stdin)。你可以看到它是一個(gè)輸入,因?yàn)榧^(<)指向0,而對(duì)于 12,箭頭(>)是指向外部的。

標(biāo)準(zhǔn)文件描述符有什么用?

如果你在閱讀本系列以后,你已經(jīng)多次使用標(biāo)準(zhǔn)輸出(1>)的簡(jiǎn)寫(xiě)形式:>

例如,當(dāng)(假如)你知道你的命令會(huì)拋出一個(gè)錯(cuò)誤時(shí),像 stderr2)這樣的東西也很方便,但是 Bash 告訴你的東西是沒(méi)有用的,你不需要看到它。如果要在 home/ 目錄中創(chuàng)建目錄,例如:

  1. mkdir newdir

如果 newdir/ 已經(jīng)存在,mkdir 將顯示錯(cuò)誤。但你為什么要關(guān)心這些呢?(好吧,在某些情況下你可能會(huì)關(guān)心,但并非總是如此。)在一天結(jié)束時(shí),newdir 會(huì)以某種方式讓你填入一些東西。你可以通過(guò)將錯(cuò)誤消息推入虛空(即 `/dev/null)來(lái)抑制錯(cuò)誤消息:

  1. mkdir newdir 2> /dev/null

這不僅僅是 “讓我們不要看到丑陋和無(wú)關(guān)的錯(cuò)誤消息,因?yàn)樗鼈兒軣┤?rdquo;,因?yàn)樵谀承┣闆r下,錯(cuò)誤消息可能會(huì)在其他地方引起一連串錯(cuò)誤。比如說(shuō),你想找到 /etc 下所有的 .service 文件。你可以這樣做:

  1. find /etc -iname "*.service"

但事實(shí)證明,在大多數(shù)系統(tǒng)中,find 顯示的錯(cuò)誤會(huì)有許多行,因?yàn)槠胀ㄓ脩魧?duì) /etc 下的某些文件夾沒(méi)有讀取訪問(wèn)權(quán)限。它使讀取正確的輸出變得很麻煩,如果 find 是更大的腳本的一部分,它可能會(huì)導(dǎo)致行中的下一個(gè)命令排隊(duì)。

相反,你可以這樣做:

  1. find /etc -iname "*.service" 2> /dev/null

而且你只得到你想要的結(jié)果。

文件描述符入門

單獨(dú)的文件描述符 stdoutstderr 還有一些注意事項(xiàng)。如果要將輸出存儲(chǔ)在文件中,請(qǐng)執(zhí)行以下操作:

  1. find /etc -iname "*.service" 1> services.txt

工作正常,因?yàn)?1> 意味著 “發(fā)送標(biāo)準(zhǔn)輸出且自身標(biāo)準(zhǔn)輸出(非標(biāo)準(zhǔn)錯(cuò)誤)到某個(gè)地方”。

但這里存在一個(gè)問(wèn)題:如果你想把命令拋出的錯(cuò)誤信息記錄到文件,而結(jié)果中沒(méi)有錯(cuò)誤信息你該怎么?上面的命令并不會(huì)這樣做,因?yàn)樗粚?xiě)入 find 正確的結(jié)果,而:

  1. find /etc -iname "*.service" 2> services.txt

只會(huì)寫(xiě)入命令拋出的錯(cuò)誤信息。

我們?nèi)绾蔚玫絻烧撸空?qǐng)嘗試以下命令:

  1. find /etc -iname "*.service" &> services.txt

…… 再次和 & 打個(gè)招呼!

我們一直在說(shuō) stdin0)、stdout1)和 stderr2)是“文件描述符”。文件描述符是一種特殊構(gòu)造,是指向文件的通道,用于讀取或?qū)懭耄騼烧呒娑兄_@來(lái)自于將所有內(nèi)容都視為文件的舊 UNIX 理念。想寫(xiě)一個(gè)設(shè)備?將其視為文件。想寫(xiě)入套接字并通過(guò)網(wǎng)絡(luò)發(fā)送數(shù)據(jù)?將其視為文件。想要讀取和寫(xiě)入文件?嗯,顯然,將其視為文件。

因此,在管理命令的輸出和錯(cuò)誤的位置時(shí),將目標(biāo)視為文件。因此,當(dāng)你打開(kāi)它們來(lái)讀取和寫(xiě)入它們時(shí),它們都會(huì)獲得文件描述符。

這是一個(gè)有趣的效果。例如,你可以將內(nèi)容從一個(gè)文件描述符傳遞到另一個(gè)文件描述符:

  1. find /etc -iname "*.service" 1> services.txt 2>&1

這會(huì)將 stderr 導(dǎo)向到 stdout,而 stdout 通過(guò)管道被導(dǎo)向到一個(gè)文件中 services.txt 中。

它再次出現(xiàn):& 發(fā)信號(hào)通知 Bash 1 是目標(biāo)文件描述符。

標(biāo)準(zhǔn)文件描述符的另一個(gè)問(wèn)題是,當(dāng)你從一個(gè)管道傳輸?shù)搅硪粋€(gè)時(shí),你執(zhí)行此操作的順序有點(diǎn)違反直覺(jué)。例如,按照上面的命令。它看起來(lái)像是錯(cuò)誤的方式。你也行像這樣閱讀它:“將輸出導(dǎo)向到文件,然后將錯(cuò)誤導(dǎo)向到標(biāo)準(zhǔn)輸出。” 看起來(lái)錯(cuò)誤輸出會(huì)在后面,并且在輸出到標(biāo)準(zhǔn)輸出(1)已經(jīng)完成時(shí)才發(fā)送。

但這不是文件描述符的工作方式。文件描述符不是文件的占位符,而是文件的輸入和(或)輸出通道。在這種情況下,當(dāng)你做 1> services.txt 時(shí),你的意思是 “打開(kāi)一個(gè)寫(xiě)管道到 services.txt 并保持打開(kāi)狀態(tài)”。1 是你要使用的管道的名稱,它將保持打開(kāi)狀態(tài)直到該行的結(jié)尾。

如果你仍然認(rèn)為這是錯(cuò)誤的方法,試試這個(gè):

  1. find /etc -iname "*.service" 2>&1 1>services.txt

并注意它是如何不工作的;注意錯(cuò)誤是如何被導(dǎo)向到終端的,而只有非錯(cuò)誤的輸出(即 stdout)被推送到 services.txt

這是因?yàn)?Bash 從左到右處理 find 的每個(gè)結(jié)果。這樣想:當(dāng) Bash 到達(dá) 2>&1 時(shí),stdout1)仍然是指向終端的通道。如果 find 給 Bash 的結(jié)果包含一個(gè)錯(cuò)誤,它將被彈出到 2,轉(zhuǎn)移到 1,然后留在終端!

然后在命令結(jié)束時(shí),Bash 看到你要打開(kāi) stdout1) 作為到 services.txt 文件的通道。如果沒(méi)有發(fā)生錯(cuò)誤,結(jié)果將通過(guò)通道 1 進(jìn)入文件。

相比之下,在:

  1. find /etc -iname "*.service" 1>services.txt 2>&1

1 從一開(kāi)始就指向 services.txt,因此任何彈出到 2 的內(nèi)容都會(huì)導(dǎo)向到 1 ,而 1 已經(jīng)指向最終去的位置 services.txt,這就是它工作的原因。

在任何情況下,如上所述 &> 都是“標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤”的縮寫(xiě),即 2>&1

這可能有點(diǎn)多,但不用擔(dān)心。重新導(dǎo)向文件描述符在 Bash 命令行和腳本中是司空見(jiàn)慣的事。隨著本系列的深入,你將了解更多關(guān)于文件描述符的知識(shí)。 

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2025-01-10 15:13:38

2023-04-06 15:22:15

Linux進(jìn)程系統(tǒng)

2012-08-08 10:31:41

IBMdW

2020-02-07 18:16:01

進(jìn)程線程底層原理

2021-06-18 06:02:24

內(nèi)核文件傳遞

2023-12-13 14:01:34

Elasticsea文件描述符操作系統(tǒng)

2019-07-09 14:30:16

LinuxJava 服務(wù)器

2019-07-09 15:30:31

Linuxulimit文件描述符

2016-10-28 21:55:28

Javascript屬性特性屬性描述符

2009-07-08 09:46:45

Servlet注釋部署描述符

2017-02-05 10:06:53

Python黑魔法描述符

2021-05-19 14:48:58

Linux文件fd

2009-09-04 14:04:53

C#文檔

2019-07-05 14:20:45

RPC服務(wù)器模型

2016-08-23 17:21:51

UnixLinux重定向

2021-01-18 10:15:40

tee命令BashLinux

2010-06-23 16:19:48

Linux Bash

2014-02-12 10:58:05

Linux文件夾文件權(quán)限

2011-08-25 14:03:36

creat中文man

2011-08-25 14:19:52

open中文man
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

中文字幕第一区二区| 免费亚洲一区| 日韩欧美国产系列| 激情小视频网站| 日韩欧美亚洲系列| 奇米四色…亚洲| 久久91精品国产| 人妻无码一区二区三区| 国产精品久久乐| 亚洲高清免费视频| 日韩欧美精品一区二区三区经典| 国产视频第一页| 亚洲久久视频| 日韩一区二区三区xxxx| 给我免费观看片在线电影的| 国产成人精品一区二区三区视频| 亚洲国产美女搞黄色| 青青草久久网络| 成人精品在线播放| 久久黄色级2电影| 97久久精品国产| 一二三四在线观看视频| 米奇精品关键词| 欧美久久久久久久久久| 无码精品国产一区二区三区免费| 大片免费在线看视频| 91视频91自| 91视频网页| 中文在线a天堂| 亚洲另类自拍| 久久久久久999| 精品在线观看一区| 清纯唯美亚洲经典中文字幕| 日韩免费看网站| 中日韩av在线播放| 欧美日韩免费观看视频| 黑人巨大精品欧美一区二区一视频| 免费观看中文字幕| 最新真实国产在线视频| 91蝌蚪porny| 精品欧美国产| 成人免费视频国产免费麻豆| 国产麻豆视频一区| 成人a免费视频| 夜夜躁狠狠躁日日躁av| 日日噜噜夜夜狠狠视频欧美人| 欧美日韩高清区| 精品自拍偷拍视频| 亚洲精品极品少妇16p| 中文字幕欧美国内| 欧美成人另类视频| 国内黄色精品| 国产亚洲精品一区二555| 可以直接看的无码av| 久久综合五月婷婷| 亚洲国产成人在线视频| 欧美双性人妖o0| 国产精品xxx在线观看| 精品欧美乱码久久久久久1区2区| 丰满少妇中文字幕| 中文字幕av一区二区三区四区| 欧美一区二区久久| 一本之道在线视频| 日韩精品一区国产| 精品日韩在线一区| 伊人网综合视频| 精品自拍偷拍| 亚洲欧美精品中文字幕在线| 一区二区三区四区免费| re久久精品视频| 色多多国产成人永久免费网站| 国产精品成人在线视频| 天天操夜夜操国产精品| 不卡av日日日| 日本亚洲色大成网站www久久| 欧美日韩 一区二区三区| 欧美色图天堂| 激情成人中文字幕| 久草精品在线播放| av成人在线观看| 欧美精品 国产精品| 中文写幕一区二区三区免费观成熟| 日韩精品成人在线观看| 亚洲国产天堂久久国产91 | 欧美性受ⅹ╳╳╳黑人a性爽| 亚洲线精品一区二区三区八戒| 日韩五码在线观看| 国产一区二区主播在线| 欧美一区二区三区思思人| 免费黄视频在线观看| 激情亚洲另类图片区小说区| 亚洲韩国精品一区| 无人在线观看的免费高清视频| 欧美视频第一| 亚洲国产99精品国自产| 日韩女同一区二区三区| 欧美日韩国产亚洲一区| 欧美做爰性生交视频| 97精品人妻一区二区三区| 丁香激情综合五月| 亚洲欧美日韩国产yyy| 欧美aaa免费| 91黄色免费版| 亚洲一二三四五| 欧美先锋资源| 97久久精品人人澡人人爽缅北| 亚洲综合免费视频| 久久综合色之久久综合| 热这里只有精品| 都市激情亚洲一区| 欧美www视频| 人与动物性xxxx| 亚洲福利免费| 亚洲jizzjizz日本少妇| 青青草免费观看免费视频在线| 亚洲三级电影全部在线观看高清| 免费成人在线视频网站| 秋霞一区二区三区| 在线看日韩欧美| 男人的天堂一区二区| 久久99精品久久久久久动态图| 精品无人区一区二区三区| 成人video亚洲精品| 在线看一区二区| 好男人香蕉影院| 欧美区一区二| 成人午夜黄色影院| 北岛玲日韩精品一区二区三区| 亚洲成人免费在线| 麻豆精品国产传媒| 99tv成人| 国产精品久久久久久久久久99 | 欧美爱爱视频| 国产亚洲欧洲高清| www五月天com| 久久理论电影网| 18岁网站在线观看| 牛牛影视一区二区三区免费看| 久久久久国产视频| 性做久久久久久久久久| 亚洲精选视频免费看| 亚洲精品国产一区二区三区| 菠萝蜜一区二区| 国产精品麻豆va在线播放| 成人在线免费观看| 91国产丝袜在线播放| 亚洲天堂视频一区| 视频一区视频二区在线观看| 看欧美日韩国产| 午夜激情电影在线播放| 亚洲精品美女在线观看| 动漫精品一区一码二码三码四码| 国产成a人亚洲| 波多野结衣av一区二区全免费观看| 国产精品白丝久久av网站| www.欧美精品| 国产成人精品无码高潮| 一区二区三区中文字幕| 精品无码av一区二区三区| 欧美日韩亚洲三区| 91精品视频播放| 国产在线观看av| 欧美一级艳片视频免费观看| 人妻人人澡人人添人人爽| 国产在线播精品第三| 国产欧美综合一区| 日韩三级不卡| 午夜精品久久久久久久久久久久久| www.五月激情| 精品国产福利视频| 中文字幕免费高清| 久久精品久久99精品久久| 一区二区三区久久网| 欧美9999| 91av在线国产| 99re在线视频| 日韩午夜在线播放| 国产无码精品在线播放| 国产亚洲欧美日韩俺去了| 欧美激情第3页| 黄色精品网站| 五月婷婷一区| 国产精品45p| 国产精品嫩草影院一区二区| 黄色av电影在线播放| 337p日本欧洲亚洲大胆精品| 日韩免费av网站| 亚洲理论在线观看| 51调教丨国产调教视频| 久久99久久精品欧美| 99色这里只有精品| 精品免费在线| 丁香婷婷久久久综合精品国产| 深夜在线视频| 久久久成人av| 裸体xxxx视频在线| 日韩精品一区在线| 中文字幕在线欧美| 亚洲宅男天堂在线观看无病毒| 泷泽萝拉在线播放| 国产精品一级黄| 欧美精品性生活| 亚洲精品日本| 日本丰满大乳奶| 欧洲杯半决赛直播| 国内一区在线| 韩国精品视频在线观看| 久久久视频精品| 黄色一级大片在线免费看产| 亚洲欧美精品一区二区| 亚洲精品成av人片天堂无码| 欧美伊人久久大香线蕉综合69 | 在线亚洲+欧美+日本专区| 91日韩中文字幕| 欧美经典一区二区三区| yjizz视频| 国产一区二区调教| 日韩av手机版| 免费视频一区| 日韩中字在线观看| 中文字幕一区二区三三 | 在线观看你懂的视频| 日本不卡一区二区| 中文字幕日本最新乱码视频| 欧美精品激情| mm131午夜| 久久一区二区中文字幕| 欧洲一区二区日韩在线视频观看免费 | 国产精品精品久久久久久| av免费在线视| 欧美精品video| 中文字幕在线观看播放| 久久精品99国产精品酒店日本 | 亚洲 中文字幕 日韩 无码| 伊人天天综合| 久久久久久久9| 欧美不卡在线| 日韩中文在线字幕| 五月婷婷亚洲| 亚洲自拍的二区三区| 欧美午夜精彩| 一道精品一区二区三区| 欧美理论视频| 神马欧美一区二区| 欧美日韩伦理在线免费| 日韩国产在线一区| 日韩欧美视频专区| 亚洲欧洲国产日韩精品| 久久精品国产68国产精品亚洲| 日本不卡在线观看| 国产一区三区在线播放| 欧美日韩一区二区三| 国产成人精品一区二区免费看京 | 老司机av网站| 国产高清精品网站| 久久久无码人妻精品无码| 国产aⅴ综合色| 免费不卡的av| 久久伊人中文字幕| 性欧美一区二区| 中文字幕国产精品一区二区| 成人无码精品1区2区3区免费看 | 国产99久久精品| 亚洲天堂美女视频| 91麻豆国产自产在线观看| 草草影院第一页| 欧美激情一区二区三区不卡 | 欧美特黄一级| 成人性生活视频免费看| 免费欧美日韩| 免费看涩涩视频| 国产一二精品视频| 国产国语老龄妇女a片| 久久综合九色综合欧美亚洲| 伊人影院综合网| 亚洲乱码中文字幕| 日韩精品一区二区三| 在线观看视频欧美| 91精东传媒理伦片在线观看| 日韩欧美一区电影| 天天干天天插天天操| 一区二区三区天堂av| 国产在线观看免费麻豆| 国模极品一区二区三区| 日韩制服诱惑| 国产精品一区二区a| 中文有码一区| 黄色成人在线免费观看| 玖玖视频精品| 狠狠干狠狠操视频| 99re这里只有精品首页| 日本成人精品视频| 午夜国产精品一区| 天堂av免费在线观看| 日韩视频免费直播| 二区在线观看| 国内精品一区二区三区| 免费一区二区三区四区| 国产亚洲福利社区| 国产精品久久久乱弄 | 欧美精品一区二区久久久| a中文在线播放| 国内精品一区二区三区四区| 欧美高清影院| 欧美区高清在线| 韩国欧美一区| 超碰成人在线播放| 91麻豆成人久久精品二区三区| 亚洲欧美精品aaaaaa片| 日韩欧美在线国产| 内射后入在线观看一区| 日韩在线视频免费观看| 最新日韩三级| 国产一区二区三区四区五区在线| 亚洲精品国产首次亮相| 国产xxxxx视频| 99re这里只有精品6| 99热精品免费| 4438x亚洲最大成人网| 岛国在线大片| 日韩av电影在线网| 美腿丝袜亚洲图片| 免费拍拍拍网站| 国产福利精品一区| 熟女av一区二区| 欧美三区在线视频| 国产黄在线播放| 欧美一级大片在线免费观看| 国产精品自在| 日韩一级片免费视频| 国产精品1区二区.| 久久精品一区二区三区四区五区| 欧美在线播放高清精品| 国产精品视频一区二区久久| 欧美在线激情网| 亚州综合一区| 欧美亚洲一二三区| 99精品偷自拍| 日本一本高清视频| 亚洲精美色品网站| av免费不卡国产观看| 国产精品区二区三区日本| 欧美日本不卡高清| 欧美老女人bb| 午夜激情一区二区| 国产精品国产高清国产| 4438全国亚洲精品在线观看视频| 都市激情久久| 国产视频九色蝌蚪| 91免费看视频| 精品国产www| 日韩在线视频导航| 精品视频一区二区三区| 日韩精品福利片午夜免费观看| 国产一区激情在线| 特级片在线观看| 精品国产伦一区二区三区免费| 国产丝袜视频在线播放| 国产91亚洲精品一区二区三区| 激情欧美丁香| 免费看污黄网站在线观看| 色美美综合视频| 视频免费一区| 亚洲综合在线做性| 亚洲韩日在线| 日韩精品电影一区二区| 欧美视频中文字幕| 国产一区久久精品| 国产精品一区二区a| 免费在线观看成人av| 日韩一级av毛片| 在线播放亚洲一区| 2018av在线| 日韩福利影院| 国产一区二区三区在线观看免费视频| 四虎免费在线视频| 日韩精品在线看| 狠狠久久伊人中文字幕| 800av在线免费观看| 91亚洲精品久久久蜜桃| 中文字幕av免费观看| 欧美成人激情视频| 五月天亚洲一区| 中文字幕 欧美日韩| 亚洲成人av中文| 成年人视频在线看| 动漫3d精品一区二区三区| 久久久www| 成熟的女同志hd| 亚洲精品视频在线播放| 国产一区二区| 熟女少妇精品一区二区| 亚洲乱码国产乱码精品精98午夜| 四虎影视在线播放| 成人乱色短篇合集| 久久国产精品久久久久久电车| 国产午夜手机精彩视频| 亚洲欧美日韩国产中文专区| 粉嫩一区二区三区在线观看| 日本日本19xxxⅹhd乱影响|