新聞中心
輸入重定向是指把文件導(dǎo)入到命令中,而輸出重定向則是指把原本要輸出到屏幕的數(shù)據(jù)信息寫入到指定文件中,下面為大家詳細(xì)講解一下輸入重定向。

創(chuàng)新互聯(lián)公司主要從事網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)五蓮,十載網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220
和輸出重定向一樣,Unix 命令也可以從文件獲取輸入,語法為:
command1
這樣,本來需要從鍵盤獲取輸入的命令會(huì)轉(zhuǎn)移到文件讀取內(nèi)容。
注意:輸出重定向是大于號(hào)(>),輸入重定向是小于號(hào)(
實(shí)例 接著以上實(shí)例,我們需要統(tǒng)計(jì) users 文件的行數(shù),執(zhí)行以下命令:
$ wc -l users
2 users
也可以將輸入重定向到 users 文件:
$ wc -l
注意:上面兩個(gè)例子的結(jié)果不同:第一個(gè)例子,會(huì)輸出文件名;第二個(gè)不會(huì),因?yàn)樗鼉H僅知道從標(biāo)準(zhǔn)輸入讀取內(nèi)容。
command1 outfile
同時(shí)替換輸入和輸出,執(zhí)行command1,從文件infile讀取內(nèi)容,然后將輸出寫入到outfile中。
重定向深入講解
一般情況下,每個(gè) Unix/Linux 命令運(yùn)行時(shí)都會(huì)打開三個(gè)文件:
標(biāo)準(zhǔn)輸入文件(stdin):stdin的文件描述符為0,Unix程序默認(rèn)從stdin讀取數(shù)據(jù)。 標(biāo)準(zhǔn)輸出文件(stdout):stdout 的文件描述符為1,Unix程序默認(rèn)向stdout輸出數(shù)據(jù)。 標(biāo)準(zhǔn)錯(cuò)誤文件(stderr):stderr的文件描述符為2,Unix程序會(huì)向stderr流中寫入錯(cuò)誤信息。 默認(rèn)情況下,command > file 將 stdout 重定向到 file,command
如果希望 stderr 重定向到 file,可以這樣寫:
$ command 2 > file
如果希望 stderr 追加到 file 文件末尾,可以這樣寫:
$ command 2 >> file
2 表示標(biāo)準(zhǔn)錯(cuò)誤文件(stderr)。
如果希望將 stdout 和 stderr 合并后重定向到 file,可以這樣寫:
$ command > file 2>&1
或者
$ command >> file 2>&1
如果希望對(duì) stdin 和 stdout 都重定向,可以這樣寫:
$ command file2
command 命令將 stdin 重定向到 file1,將 stdout 重定向到 file2。
新聞名稱:Shell輸入重定向講解
當(dāng)前URL:http://m.5511xx.com/article/coscsso.html


咨詢
建站咨詢
