Linux中國

使用 Ultimate Plumber 即時預覽管道命令結果

管道命令的作用是將一個命令/程序/進程的輸出發送給另一個命令/程序/進程,以便將輸出結果進行進一步的處理。我們可以通過使用管道命令把多個命令組合起來,使一個命令的標準輸入或輸出重定向到另一個命令。兩個或多個 Linux 命令之間的豎線字元(|)表示在命令之間使用管道命令。管道命令的一般語法如下所示:

Command-1 | Command-2 | Command-3 | …| Command-N

Ultimate Plumber(簡稱 UP)是一個命令行工具,它可以用於即時預覽管道命令結果。如果你在使用 Linux 時經常會用到管道命令,就可以通過它更好地運用管道命令了。它可以預先顯示執行管道命令後的結果,而且是即時滾動地顯示,讓你可以輕鬆構建複雜的管道。

下文將會介紹如何安裝 UP 並用它將複雜管道命令的編寫變得簡單。

重要警告:

在生產環境中請謹慎使用 UP!在使用它的過程中,有可能會在無意中刪除重要數據,尤其是搭配 rmdd 命令時需要更加小心。勿謂言之不預。

使用 Ultimate Plumber 即時預覽管道命令

下面給出一個簡單的例子介紹 up 的使用方法。如果需要將 lshw 命令的輸出傳遞給 up,只需要在終端中輸入以下命令,然後回車:

$ lshw |& up

你會在屏幕頂部看到一個輸入框,如下圖所示。

在輸入命令的過程中,輸入管道符號並回車,就可以立即執行已經輸入了的命令。Ultimate Plumber 會在下方的可滾動窗口中即時顯示管道命令的輸出。在這種狀態下,你可以通過 PgUp/PgDn 鍵或 ctrl + ←/ctrl + → 組合鍵來查看結果。

當你滿意執行結果之後,可以使用 ctrl + x 組合鍵退出 UP。而退出前編寫的管道命令則會保存在當前工作目錄的文件中,並命名為 up1.sh。如果這個文件名已經被佔用,就會命名為 up2.shup3.sh 等等以此類推,直到第 1000 個文件。如果你不需要將管道命令保存輸出,只需要使用 ctrl + c 組合鍵退出即可。

通過 cat 命令可以查看 upX.sh 文件的內容。例如以下是我的 up2.sh 文件的輸出內容:

$ cat up2.sh
#!/bin/bash
grep network -A5 | grep : | cut -d: -f2- | paste - -

如果通過管道發送到 up 的命令運行時間太長,終端窗口的左上角會顯示一個波浪號(~)字元,這就表示 up 在等待前一個命令的輸出結果作為輸入。在這種情況下,你可能需要使用 ctrl + s 組合鍵暫時凍結 up 的輸入緩衝區大小。在需要解凍的時候,使用 ctrl + q 組合鍵即可。Ultimate Plumber 的輸入緩衝區大小一般為 40 MB,到達這個限制之後,屏幕的左上角會顯示一個加號。

以下是 up 命令的一個簡單演示:

安裝 Ultimate Plumber

喜歡這個工具的話,你可以在你的 Linux 系統上安裝使用。安裝過程也相當簡單,只需要在終端里執行以下兩個命令就可以安裝 up 了。

首先從 Ultimate Plumber 的發布頁面下載最新的二進位文件,並將放在你系統的某個路徑下,例如 /usr/local/bin/

$ sudo wget -O /usr/local/bin/up wget https://github.com/akavel/up/releases/download/v0.2.1/up

然後向 up 二進位文件賦予可執行許可權:

$ sudo chmod a+x /usr/local/bin/up

至此,你已經完成了 up 的安裝,可以開始編寫你的管道命令了。

via: https://www.ostechnix.com/ultimate-plumber-writing-linux-pipes-with-instant-live-preview/

作者:SK 選題:lujun9972 譯者:HankChow 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國