UNIX系統管理:管道

來源:互聯網
上載者:User
關鍵字 UNIX系統管理

完成這一章,你能夠做以下事情:

瞭解管道的用途

建立一個管道,使其從一個命令獲得輸出,然後為另一個命令製造輸入

使用tee,cut,tr,more,和pr篩檢程式

10.1 管道簡介

shell提供通過管道將命令連接起來的能力。 通過對檔進行過濾充分了體現UNIX系統操作環境的靈活性。 你能夠使用管道來過濾一個命令的輸出。

這一章會介紹管道,和一些篩檢程式(cut,tr,tee和pr)的使用,這樣你就能對檔或命令的輸出作進一步的處理。

10.2 為什麼使用管道

不使用管道                      使用管道

$ who > temp_file

$ wc -l < temp_file

$ rm temp_file

&HTTP://www.aliyun.com/zixun/aggregation/37954.html">nbsp; who | wc -l

如果你使用I/O重定向來完成過濾一個命令的輸出的操作,你會首先重定向一個命令的輸出到暫存檔案然後過濾這個暫存檔案的內容,而當你完成這些操作後,你又要刪除這個暫存檔案。 雖然這種方式擴展了命令的能力,但是刪除暫存檔案的操作顯得不是很方便。

管道讓你直接將一個命令的輸出傳送到另一個命令的輸入,你不需要創建中間檔,因此當你完成操作的時候不需要進行清除操作。 這就是UNIX系統的靈活和強大的具體體現:命令和命令可以被連結在一起,提高了單個命令列的處理能力。

10.3   '|' 符號

「|」 符號(讀成管道符)的作用是聯接兩個命令。 管道符左邊命令的標準輸出會被用作管道符右邊的命令的標準輸入,而出現在管道中間的命令,必須能夠接收標準輸入和輸出到標準輸出。

篩檢程式例如wc,sort,和grep就可以接收標準輸入並產生標準輸出,所以,它們可以出現在一個管道的中間。 通過將命令和篩檢程式連結到一起,使你能夠執行一些複雜的操作。

以下是管道的每一個位置的命令的要求:

任何在一個|符號左邊的命令必須能夠輸出到標準輸出。

任何在 | 符號右邊的命令必須能夠從標準輸入讀取資料。

任何在兩個 | 符號之間的命令必須能夠接收標準輸入並且能夠製造輸出到標準輸出。 (是一個篩檢程式)

more 命令

more 命令被用來在螢幕上顯示檔的內容,一次顯示一屏。 more 命令同樣也能讀取標準輸入。 因此,它能出現在一個管道的右邊,用來控制任何命令的輸出,並且產生輸出到標準輸出。 如果命令的輸出很長(一屏顯示不完),你可以使用more命令實現一次流覽一屏的功能。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.