亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

linux腳本編寫教程 shell文件是否存在


linux腳本編寫教程 shell文件是否存在

文章插圖
1.定義Shell 輸入 / 輸出重定向 大多數(shù) UNIX 系統(tǒng)命令從你的終端接受輸入并將所產(chǎn)生的輸出發(fā)送回到您的終端 。
大多數(shù) UNIX 系統(tǒng)命令從你的終端接受輸入并將所產(chǎn)生的輸出發(fā)送回到您的終端 。一個命令通常從一個叫標(biāo)準(zhǔn)輸入的地方讀取輸入 , 默認(rèn)情況下 , 這恰好是你的終端 。同樣 , 一個命令通常將其輸出寫入到標(biāo)準(zhǔn)輸出 , 默認(rèn)情況下 , 這也是你的終端 。
重定向命令列表如下:
需要注意的是文件描述符 0 通常是標(biāo)準(zhǔn)輸入(STDIN) , 1 是標(biāo)準(zhǔn)輸出(STDOUT) , 2 是標(biāo)準(zhǔn)錯誤輸出(STDERR) 。
2.輸出重定向重定向一般通過在命令間插入特定的符號來實現(xiàn) 。特別的 , 這些符號的語法如下所示:
command1 > file1上面這個命令執(zhí)行 command1 然后將輸出的內(nèi)容存入 file1 。
注意任何 file1 內(nèi)的已經(jīng)存在的內(nèi)容將被新內(nèi)容替代 。如果要將新內(nèi)容添加在文件末尾 , 請使用 >> 操作符 。
實例
執(zhí)行下面的 who 命令 , 它將命令的完整的輸出重定向在用戶文件中 (users):
$ who > users執(zhí)行后 , 并沒有在終端輸出信息 , 這是因為輸出已被從默認(rèn)的標(biāo)準(zhǔn)輸出設(shè)備(終端)重定向到指定的文件 。
你可以使用 cat 命令查看文件內(nèi)容:
$ cat users_mbsetupuser console Oct 31 17:35tianqixin console Oct 31 17:35tianqixin ttys000 Dec 1 11:33輸出重定向會覆蓋文件內(nèi)容 , 請看下面的例子:
$ echo "昂維斯:www.anvs.cn" > users$ cat users昂維斯:www.anvs.cn$如果不希望文件內(nèi)容被覆蓋 , 可以使用 >> 追加到文件末尾 , 例如:
$ echo "昂維斯:www.anvs.cn" >> users$ cat users昂維斯:www.anvs.cn昂維斯:www.anvs.cn$3.輸入重定向和輸出重定向一樣 , Unix 命令也可以從文件獲取輸入 , 語法為:
command1 < file1這樣 , 本來需要從鍵盤獲取輸入的命令會轉(zhuǎn)移到文件讀取內(nèi)容 。
注意:輸出重定向是大于號 (>) , 輸入重定向是小于號 (<) 。
實例
接著以上實例 , 我們需要統(tǒng)計 users 文件的行數(shù), 執(zhí)行以下命令:
$ wc -l users 2 users也可以將輸入重定向到 users 文件:
$ wc -l < users 2注意:上面兩個例子的結(jié)果不同:第一個例子 , 會輸出文件名;第二個不會 , 因為它僅僅知道從標(biāo)準(zhǔn)輸入讀取內(nèi)容 。
command1 < infile > outfile同時替換輸入和輸出 , 執(zhí)行 command1 , 從文件 infile 讀取內(nèi)容 , 然后將輸出寫入到 outfile中 。
4.重定向深入講解一般情況下 , 每個 Unix/Linux 命令運行時都會打開三個文件:
標(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)錯誤文件 (stderr):stderr 的文件描述符為 2 , Unix 程序會向 stderr 流中寫入錯誤信息 。默認(rèn)情況下 , command > file 將 stdout 重定向到 file , command < file 將 stdin 重定向到file 。
如果希望 stderr 重定向到 file , 可以這樣寫:
$ command 2>file如果希望 stderr 追加到 file 文件末尾 , 可以這樣寫:
$ command 2>>file2 表示標(biāo)準(zhǔn)錯誤文件 (stderr) 。
如果希望將 stdout 和 stderr 合并后重定向到 file , 可以這樣寫:


以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!

「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助: