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

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

bash重定向詳解

2020-10-14 22:38:16
字體:
供稿:網(wǎng)友

    首先我們先回顧下bash現(xiàn)有的重定向符號
    1.重定向輸入輸出,目標(biāo)是文件word
    [n]<word    默認(rèn)n為0
    [n]>word    默認(rèn)n為1
    [n]>|word   默認(rèn)n為1    noclobber選項有關(guān),直接例子就明白它的用處了
    [n]》word   默認(rèn)n為1
    igi@igi-debian:~$ rm -f testfile
    igi@igi-debian:~$ touch testfile
    igi@igi-debian:~$ cat testfile
    igi@igi-debian:~$ set -o noclobber
    igi@igi-debian:~$ echo 2 >testfile
    bash: testfile: cannot overwrite existing file
    igi@igi-debian:~$ echo 2 >| testfile
    igi@igi-debian:~$ cat testfile
    2
    2.重定向標(biāo)準(zhǔn)錯誤和標(biāo)準(zhǔn)輸出到指定文件描述符
    &>word      更通用
    >&word
    >word 2>&1
    追加輸出
    &》word     沒有》&word的表達方法
    》word 2>&1
    3.Here Documents
    《[-]word
    here-document
    delimiter
    -符號將刪除所有行開頭的tab符
    4.Here Strings
    <<<word
    5.復(fù)制文件描述符
    [n]<&word   默認(rèn)n為0,如果為數(shù)字,必須得為打開的文件描述符
    [n]<&-      關(guān)閉文件描述符
    [n]>&word   默認(rèn)n為1,如果為數(shù)字,必須得為打開的文件描述符
    [n]>&-      關(guān)閉文件描述符
    6.移動文件描述符
    [n]<&digit- 默認(rèn)n為0
    [n]>&digit- 默認(rèn)n為1
    7.以讀寫方式打開文件描述符
    [n]<>word   文件不在時會被創(chuàng)建
    如果要深刻理解重定向,先要明白以下2點
    1.shell(bash或者csh等)負(fù)責(zé)重定向,對于程序或者函數(shù),這一切都是透明的,它只管輸入輸出,至于從哪輸入哪輸出,是shell解釋器負(fù)責(zé)
    2.shell命令解析過程中,在實際執(zhí)行命令前,IO重定向先設(shè)置好
    我們來看以下的例子
    1.'echo 1 a1 >a2′ 與 'echo 1 >a2 a1′
    igi@igi-debian:~$ echo 1 a1 >a2
    igi@igi-debian:~$ cat a2
    1 a1
    igi@igi-debian:~$ rm a2
    igi@igi-debian:~$ echo 1 >a2 a1
    igi@igi-debian:~$ cat a2
    1 a1
    IO重定向是在命令執(zhí)行前設(shè)置好,所以上面兩種情況,最后的效果一樣,bash先把輸出重定向到a2文件,再執(zhí)行'echo 1 a1′
    2.'ls nothisfile >res 2>&1′ 與 'ls nothisfile 2>&1 >res'
    igi@igi-debian:~/rtest$ ls nothisfile
    ls: cannot access nothisfile: No such file or directory
    igi@igi-debian:~/rtest$ ls nothisfile >res 2>&1
    igi@igi-debian:~/rtest$ cat res
    ls: cannot access nothisfile: No such file or directory
(責(zé)任編輯:VEVB)

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 库伦旗| 宜城市| 海丰县| 凉山| 密云县| 广水市| 方正县| 西乌| 娱乐| 同心县| 博野县| 陵川县| 咸丰县| 双鸭山市| 彭水| 浦东新区| 浏阳市| 黔江区| 龙门县| 广安市| 儋州市| 石家庄市| 道真| 永宁县| 汪清县| 威远县| 会宁县| 天津市| 康乐县| 石阡县| 潢川县| 怀柔区| 岐山县| 胶州市| 澄江县| 英吉沙县| 柳州市| 志丹县| 荥经县| 江津市| 宜丰县|