1、輸出重定向
重定向正確內(nèi)容:
cat xx.file > yy.file 相當(dāng)于cat xx.file 1>yy.file將文件內(nèi)容重定向到y(tǒng)y.file,將會(huì)覆蓋原有文件內(nèi)容;
cat xx.file 》yy.file 將文件內(nèi)容追加重定向到y(tǒng)y.file,不會(huì)覆蓋原有文件內(nèi)容;
重定向錯(cuò)誤的結(jié)果
xxx 2> yy.file 執(zhí)行錯(cuò)誤的命令產(chǎn)生的錯(cuò)誤結(jié)果重定向到y(tǒng)y.file文件
xxx 2》 yy.file
XXX >>yy 2>>bb
正確與錯(cuò)誤都重定向到相同文件
這種寫法比較常用: [root@clz ~]# cat /etc/passwd &>>/tmp/xx
這種學(xué)法不常用,將錯(cuò)誤的當(dāng)成正確的輸出:[root@clz ~]# cat /etc/passwd >/tmp/xx 2>&1
可以從以下的示例中更加深入的理解正確的輸入重定向:
在/dev/pts/1上執(zhí)行以下命令:
[root@clz ~]# tail -f /var/log/messages >/tmp/xx 2>/tmp/yy
在/dev/pts/0上查看執(zhí)行該命令的進(jìn)程號(hào):
[root@clz fdinfo]# ps aux | grep tail|grep -v 'grep'
root 5567 0.1 0.0 107932 620 pts/1 S+ 15:37 0:00 tail -f /var/log/messages
根據(jù)進(jìn)程號(hào),進(jìn)入到/proc目錄下找到進(jìn)程號(hào)對(duì)應(yīng)的文件夾:
[root@clz fdinfo]# cd /proc/5567
進(jìn)入fd/文件夾,執(zhí)行l(wèi)s -l命令,可以看到鏈接文件:0代表輸入,1代表標(biāo)準(zhǔn)正確的輸出,2,代表標(biāo)準(zhǔn)錯(cuò)誤的輸出,3、表示命令操作的文件,如果對(duì)多個(gè)文件進(jìn)行操作,則會(huì)有4,5...顯示其他的文件
在dev目錄下面,可以看到以下邏輯的標(biāo)準(zhǔn)輸入輸出設(shè)備,當(dāng)一個(gè)進(jìn)程運(yùn)行時(shí),self就會(huì)替換成該進(jìn)程的進(jìn)程號(hào):
[root@clz fd]# ls -al /dev/std*
lrwxrwxrwx. 1 root root 15 Dec 30 2014 /dev/stderr -> /proc/self/fd/2
lrwxrwxrwx. 1 root root 15 Dec 30 2014 /dev/stdin -> /proc/self/fd/0
lrwxrwxrwx. 1 root root 15 Dec 30 2014 /dev/stdout -> /proc/self/fd/1
2015職稱計(jì)算機(jī)考試書PowerPoint2007中 .. 定價(jià):¥45 優(yōu)惠價(jià):¥42 更多書籍 | |
2015年全國(guó)職稱計(jì)算機(jī)考試教材(2007模 .. 定價(jià):¥225 優(yōu)惠價(jià):¥213 更多書籍 |