歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> SHELL編程 >> Linux shell編程---- 管道+I/O重定向

Linux shell編程---- 管道+I/O重定向

日期:2017/3/1 14:02:27   编辑:SHELL編程
Linux shell編程---- 管道+I/O重定向 1 管道簡介 1 管道技術是Linux的一種基本的進程間通信技術,它利用先進先出排隊模型來指揮進程間的通信。對於管道,我們可以形象的理解為連接兩個實體的一個單向連接器 2 Shell編程中管道符號是"|",命令直接利用管道進行通信的一般格式 command1 | command2 | command3 | ... | commandn command1~commandn是n個命令,如果沒有管道那麼結果將會直接顯示在Shell中,當Shell遇到管道的時候,就將輸出發送下一個命令 2 cat和more命令 1 cat和more命令都是用來顯示文件的內容,它們的基本格式特比較類似 cat 選項 文件 more 選項 文件 2 cat命令的選項名稱及其意義 選項 意義 -a 顯示文件的所有內容 -b 由1開始對所有輸出的行數編號,但對空行不編號 -E 每一行末尾顯示"$" -n 由1開始對所有的輸出行進行編號 -s 當遇到連續的兩行以上的空行時就替換為一行空白行 -v 不可顯示的字符以可見的形式顯示 3 more命令的選項名稱及其意義 選項 意義 -num 一次顯示的行數 -f 計算行數時,以實際的行數,而非自動換行過後的行數 -s 當遇到連續的兩行以上的空行時就替換為一行空白行 +num 從第num行開始顯示 4 cat和more命令的最大區別在於,cat命令是不提供分頁功能的,但是more命令是顯示超過一頁的文件時提供了分頁功能 3 I/O重定向 1 I/O重定向是一個過程,這個過程捕捉一個文件,命令,程序或腳本,甚至代碼塊的輸出,然後把捕捉到的輸出作為輸入發送給另外一個文件,命令,程序 2 文件標識符是從0開始到9結束的整數,指明了與進程相關的特定數據流的源。當Linux系統啟動一個進程時,將自動為該進程打開三個文件,標准輸入,標准輸出,標准錯誤輸出,分別由文件標識符0,1,2標識,該進程如果要打開其它的文件,則從整數3開始表識 3 基本I/O重定向符號及其意義 符號 意義 cmd1 | cmd2 管道符,將cmd的標准輸出作為cmd2的標准輸入 > filename 將標准輸出寫道文件filename之中 < filename 將文件filename的內容作為標准輸入 >> filename 將標准輸出追加到filename,如果不存在則先創建一個
Copyright © Linux教程網 All Rights Reserved