国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

Shell 管道及執(zhí)行順序分析

2019-10-26 18:35:14
字體:
供稿:網(wǎng)友
1、基本概念
a、I/O重定向通常與 FD有關(guān),shell的FD通常為10個(gè),即 0~9;
b、常用FD有3個(gè),為0(stdin,標(biāo)準(zhǔn)輸入)、1(stdout,標(biāo)準(zhǔn)輸出)、2(stderr,標(biāo)準(zhǔn)錯(cuò)誤輸出),默認(rèn)與keyboard、monitor、monitor有關(guān);
c、用 < 來改變讀進(jìn)的數(shù)據(jù)信道(stdin),使之從指定的檔案讀進(jìn);
d、用 > 來改變送出的數(shù)據(jù)信道(stdout, stderr),使之輸出到指定的檔案;
e、0 是 < 的默認(rèn)值,因此 < 與 0<是一樣的;同理,> 與 1> 是一樣的;
f、在IO重定向 中,stdout 與 stderr 的管道會先準(zhǔn)備好,才會從 stdin 讀進(jìn)資料;
g、管道“|”(pipe line):上一個(gè)命令的 stdout 接到下一個(gè)命令的 stdin;
h、tee 命令是在不影響原本 I/O 的情況下,將 stdout 復(fù)制一份到檔案去;
i、bash(ksh)執(zhí)行命令的過程:分析命令-變量求值-命令替代(``和$( ))-重定向-通配符展開-確定路徑-執(zhí)行命令;
j、( ) 將 command group 置于 sub-shell 去執(zhí)行,也稱 nested sub-shell,它有一點(diǎn)非常重要的特性是:繼承父shell的Standard input, output, and error plus any other open file descriptors。
k、exec 命令:常用來替代當(dāng)前 shell 并重新啟動一個(gè) shell,換句話說,并沒有啟動子 shell。使用這一命令時(shí)任何現(xiàn)有環(huán)境都將會被清除,。exec 在對文件描述符進(jìn)行操作的時(shí)候,也只有在這時(shí),exec 不會覆蓋你當(dāng)前的 shell 環(huán)境。

2、基本IO
cmd > file 把 stdout 重定向到 file 文件中
cmd >> file 把 stdout 重定向到 file 文件中(追加)
cmd 1> fiel 把 stdout 重定向到 file 文件中
cmd > file 2>&1 把 stdout 和 stderr 一起重定向到 file 文件中
cmd 2> file 把 stderr 重定向到 file 文件中
cmd 2>> file 把 stderr 重定向到 file 文件中(追加)
cmd >> file 2>&1 把 stderr 和 stderr 一起重定向到 file 文件中
cmd < file >file2 cmd 命令以 file 文件作為 stdin,以 file2 文件作為 stdout
cat <>file 以讀寫的方式打開 file
cmd < file cmd 命令以 file 文件作為 stdin
cmd << delimiter Here document,從 stdin 中讀入,直至遇到delimiter 分界符

3、進(jìn)階IO
>&n 使用系統(tǒng)調(diào)用 dup (2) 復(fù)制文件描述符 n 并把結(jié)果用作標(biāo)準(zhǔn)輸出
<&n 標(biāo)準(zhǔn)輸入復(fù)制自文件描述符 n
<&- 關(guān)閉標(biāo)準(zhǔn)輸入(鍵盤)
>&- 關(guān)閉標(biāo)準(zhǔn)輸出
n<&- 表示將 n 號輸入關(guān)閉
n>&- 表示將 n 號輸出關(guān)閉
上述所有形式都可以前導(dǎo)一個(gè)數(shù)字,此時(shí)建立的文件描述符由這個(gè)數(shù)字指定而不是缺省的 0 或 1。如:
... 2>file 運(yùn)行一個(gè)命令并把錯(cuò)誤輸出(文件描述符 2)定向到 file。
... 2>&1 運(yùn)行一個(gè)命令并把它的標(biāo)準(zhǔn)輸出和輸出合并。(嚴(yán)格的說是通過復(fù)制文件描述符 1 來建立文件描述符 2 ,但效果通常是合并了兩個(gè)流。)
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 怀来县| 白山市| 淳安县| 长春市| 荥阳市| 河西区| 襄樊市| 双牌县| 灌南县| 思茅市| 宽甸| 宣恩县| 喀喇沁旗| 灌阳县| 靖宇县| 林周县| 册亨县| 安阳县| 富平县| 响水县| 水城县| 营口市| 广昌县| 阳江市| 双牌县| 常熟市| 舟曲县| 鹤庆县| 垦利县| 平昌县| 千阳县| 枣庄市| 西青区| 渑池县| 襄城县| 太保市| 蓝山县| 开平市| 汉中市| 宜宾市| 河津市|