shell中的重定向

linux shell下常用輸入輸出操作符是:

1.  標(biāo)準輸入   (stdin) :代碼為 0 榆浓,使用 < 或 << 有额; /dev/stdin -> /proc/self/fd/0   0代表:/dev/stdin 
2.  標(biāo)準輸出   (stdout):代碼為 1 ,使用 > 或 >> 伶贰; /dev/stdout -> /proc/self/fd/1  1代表:/dev/stdout
3.  標(biāo)準錯誤輸出(stderr):代碼為 2 ,使用 2> 或 2>> 呼畸; /dev/stderr -> /proc/self/fd/2 2代表:/dev/stderr

輸出重定向

“>”和“>>”用于重定向標(biāo)準輸出
command [1-n] > file或文件操作符或設(shè)備
上面命令意思是:將一條命令執(zhí)行結(jié)果(標(biāo)準輸出里初,或者錯誤輸出锅睛,本來都要打印到屏幕上面的)  重定向其它輸出設(shè)備(文件疚膊,打開文件操作符义辕,或打印機等等)1,2分別是標(biāo)準輸出,錯誤輸出寓盗。

1) 可以省略灌砖,不寫,默認所至標(biāo)準輸出
student@student-VirtualBox:/tmp$ ls text.sh
ls: 無法訪問text.sh: 沒有那個文件或目錄

"2>"和“2>>”用于重定向標(biāo)準輸出
2)把錯誤輸出傀蚌,不輸出到屏幕基显,輸出到t1.txt
student@student-VirtualBox:/tmp$ ls text.sh 2>t1.txt 
student@student-VirtualBox:/tmp$ cat t1.txt 
ls: 無法訪問text.sh: 沒有那個文件或目錄

3) 繼續(xù)追加把輸出寫入t1.txt  “>>”追加操作符
student@student-VirtualBox:/tmp$ cat t1.txt 
ls: 無法訪問text2.sh: 沒有那個文件或目錄
student@student-VirtualBox:/tmp$ ls text3.sh 2>>t1.txt 
student@student-VirtualBox:/tmp$ cat t1.txt 
ls: 無法訪問text2.sh: 沒有那個文件或目錄
ls: 無法訪問text3.sh: 沒有那個文件或目錄

"&>"同時重定向標(biāo)準輸出及標(biāo)準錯誤輸出
特殊設(shè)備文件: /dev/null
/dev/null 這個設(shè)備,是linux 中黑洞設(shè)備善炫,什么信息只要輸出給這個設(shè)備撩幽,都會給吃掉

student@student-VirtualBox:~$ ls -ldh /etc/ &> /dev/null 

注意:
1、shell遇到”>”操作符箩艺,會判斷右邊文件是否存在摸航,如果存在就先刪除制跟,并且創(chuàng)建新文件。不存在直接創(chuàng)建酱虎。 無論左邊命令執(zhí)行是否成功。右邊文件都會變?yōu)榭铡?2擂涛、“>>”操作符读串,判斷右邊文件,如果不存在撒妈,先創(chuàng)建恢暖。以添加方式打開文件,會分配一個文件描述符[不特別指定狰右,默認為1,2]然后杰捂,與左邊的標(biāo)準輸出(1)或錯誤輸出(2) 綁定。
3棋蚌、當(dāng)命令:執(zhí)行完嫁佳,綁定文件的描述符也自動失效。0,1,2又會空閑谷暮。
4蒿往、一條命令啟動,命令的輸入湿弦,正確輸出瓤漏,錯誤輸出,默認分別綁定0,1,2文件描述符颊埃。
5蔬充、一條命令在執(zhí)行前,先會檢查輸出是否正確班利,如果輸出設(shè)備錯誤饥漫,將不會進行命令執(zhí)行

輸入重定向

command-line [n] <file或文件描述符&設(shè)備

將然有,命令默認從鍵盤獲得的輸入肥败,改成從文件趾浅,或者其它打開文件以及設(shè)備輸入。執(zhí)行這個命令馒稍,將標(biāo)準輸入0皿哨,與文件或設(shè)備綁定。將由它進行輸入

cat >file 記錄的是鍵盤輸入,相當(dāng)于從鍵盤創(chuàng)建文件,并且只能創(chuàng)建新文件,不能編輯已有文件.
student@student-VirtualBox:/tmp$ cat > catfile
test
hello,word
#這里按下 [ctrl]+d 離開 
#從標(biāo)準輸入【鍵盤】獲得數(shù)據(jù)纽谒,然后輸出給catfile文件
student@student-VirtualBox:/tmp$ cat catfile 
test
hello,word

student@student-VirtualBox:/tmp$ cat>catfile < t1.txt 
student@student-VirtualBox:/tmp$ cat catfile
abcdef
# cat從catfile輸入數(shù)據(jù)证膨,然后輸出給文件catfile

cat <<EOF,
cat命令是linux下的一個文本輸出命令,通常是用于觀看某個文件的內(nèi)容的鼓黔;
EOF是"end of file"央勒,表示文本結(jié)束符不见。
結(jié)合這兩個標(biāo)識,即可避免使用多行echo命令的方式崔步,并實現(xiàn)多行輸出的結(jié)果稳吮。

student@student-VirtualBox:/tmp$ cat>catfile <<eof
> test a file
> test
> haha!
> eof
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市井濒,隨后出現(xiàn)的幾起案子灶似,更是在濱河造成了極大的恐慌,老刑警劉巖瑞你,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件酪惭,死亡現(xiàn)場離奇詭異,居然都是意外死亡者甲,警方通過查閱死者的電腦和手機春感,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來虏缸,“玉大人鲫懒,你說我怎么就攤上這事】芏ぃ” “怎么了刀疙?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長扫倡。 經(jīng)常有香客問我谦秧,道長,這世上最難降的妖魔是什么撵溃? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任疚鲤,我火速辦了婚禮,結(jié)果婚禮上缘挑,老公的妹妹穿的比我還像新娘集歇。我一直安慰自己,他們只是感情好语淘,可當(dāng)我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布诲宇。 她就那樣靜靜地躺著,像睡著了一般惶翻。 火紅的嫁衣襯著肌膚如雪姑蓝。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天吕粗,我揣著相機與錄音纺荧,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛宙暇,可吹牛的內(nèi)容都是我干的输枯。 我是一名探鬼主播,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼占贫,長吁一口氣:“原來是場噩夢啊……” “哼桃熄!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起靶剑,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤蜻拨,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后桩引,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡收夸,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年坑匠,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片卧惜。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡厘灼,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出咽瓷,到底是詐尸還是另有隱情设凹,我是刑警寧澤,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布茅姜,位于F島的核電站闪朱,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏钻洒。R本人自食惡果不足惜奋姿,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望素标。 院中可真熱鬧称诗,春花似錦、人聲如沸头遭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽计维。三九已至袜香,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間享潜,已是汗流浹背困鸥。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人疾就。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓澜术,卻偏偏與公主長得像,于是被迫代替她去往敵國和親猬腰。 傳聞我的和親對象是個殘疾皇子鸟废,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容

  • Ubuntu的發(fā)音 Ubuntu鼠冕,源于非洲祖魯人和科薩人的語言添寺,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲de夢閱讀 99,217評論 9 467
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數(shù)據(jù)革命閱讀 12,149評論 2 34
  • 本文筆記源自這里——[實驗樓]歡迎大家在下面交流其中有問題的地方喜歡請點收藏懈费,每日更新(全部已親自實踐). 一. ...
    東皇Amrzs閱讀 3,977評論 7 54
  • 說到韓國计露,大家首先想到的可能就是泡菜,而說到四川憎乙,大家想到的應(yīng)該就是麻辣火鍋票罐。其實,四川不止火鍋好吃泞边,泡菜也同樣霸...
    浮鹽閱讀 734評論 6 10
  • 程序員總是說自己很忙该押,是加班狗,然而很多人在任務(wù)間歇時阵谚、項目交替時蚕礼,都會有不少空閑時間,沒事兒干椭蹄、很無聊闻牡,可要是讓...
    安曉輝0閱讀 8,483評論 74 224