Coreutils Viewer(cv)是一個(gè)簡(jiǎn)單的程序,它可以用于顯示任何核心組件命令(如:cp、mv、dd、tar、gzip、gunzip、cat、grep、fgrep、egrep、cut、sort、xz、exiting)的進(jìn)度。它使用文件描述信息來(lái)確定一個(gè)命令的進(jìn)度,比如cp命令。cv之美在于,它能夠和其它Linux命令一起使用,比如你所知道的watch以及I/O重定向命令。這樣,你就可以在腳本中使用,或者你能想到的所有方式,別讓你的想象力束縛住你。
安裝
你可以從cv的github倉(cāng)庫(kù)那兒下載所需的源文件。把zip文件下載下來(lái)后,將它解壓縮,然后進(jìn)入到解壓后的文件夾。
該程序需要ncurses library。如果你已經(jīng)在你的Linux系統(tǒng)中安裝了ncurses,那么cv的安裝過(guò)程對(duì)你而言就是那么的輕松寫(xiě)意。
通過(guò)以下兩個(gè)簡(jiǎn)單步驟來(lái)進(jìn)行編譯和安裝吧。
$ make
$ sudo make install
運(yùn)行cv
要運(yùn)行cv,只需要想其它程序一樣,在命令行輸入此命令即可。如果你沒(méi)有執(zhí)行make install,而選擇從當(dāng)前目錄中去運(yùn)行,那么你可以運(yùn)行以下命令:
$ ./cv
否則,就運(yùn)行以下命令吧。
$ cv
如果沒(méi)有核心組件命令在運(yùn)行,那么cv程序會(huì)退出,并告訴你:沒(méi)有核心組件命令在運(yùn)行。
要有效使用該程序,請(qǐng)?jiān)谀阆到y(tǒng)上運(yùn)行某個(gè)核心組件程序。在本例中,我們將使用cp命令。
當(dāng)拷貝一個(gè)打文件時(shí),你就可以看到當(dāng)前進(jìn)度了,以百分比顯示。
添加選項(xiàng)到 cv
你也可以添加幾個(gè)選項(xiàng)到cv命令,就像其它命令一樣。一個(gè)有用的選項(xiàng)是讓你了解到拷貝或移動(dòng)大文件時(shí)的預(yù)計(jì)剩余時(shí)間。
添加-w選項(xiàng),它就會(huì)幫你顯示預(yù)計(jì)的剩余時(shí)間。
$ cv -w
試著添加更多的命令選項(xiàng)吧。像下面這樣添加其它選項(xiàng):
$ cv -wq
cv 和 watch 命令
watch是一個(gè)用于周期性運(yùn)行程序并顯示輸出結(jié)果的程序。有時(shí)候,你可能想要持續(xù)看看命令運(yùn)行狀況而不想將 cv 的結(jié)果存儲(chǔ)到日志文件中。在這種情況下,watch就會(huì)派上用場(chǎng)了,它可以和cv一起使用。
$ watch cv -qw
該命令將會(huì)顯示所有運(yùn)行著的核心組件命令的實(shí)例。它也會(huì)顯示進(jìn)度和預(yù)計(jì)完成時(shí)間。
在日志文件中查看輸出結(jié)果
正如其所承諾的那樣,你可以使用cv來(lái)重定向它的輸出結(jié)果到一個(gè)日志文件。這功能在命令運(yùn)行太快而看不到任何有意義的內(nèi)容時(shí)特別有用。
要在日志文件中查看進(jìn)度,你僅僅需要重定向輸出結(jié)果,就像下面這樣。
$ cv -w >> log.txt
要查看該命令的輸出結(jié)果,請(qǐng)用你喜愛(ài)的文本編輯器打開(kāi)日志文件,也可以用cat命令,就像下面這樣:
$ cat log.txt
獲得幫助
如果你在任何地方受到阻礙,你總是可以通過(guò)查閱手冊(cè)頁(yè)或使用help選項(xiàng)來(lái)獲取幫助信息。 要獲取幫助信息,可以使用帶-h選項(xiàng)的cv命令。
$ cv -h
如果需要更多詳細(xì)信息,那么手冊(cè)頁(yè)是個(gè)很不錯(cuò)的地方。
$ man cv
但是,要獲取上述手冊(cè)頁(yè),你必須執(zhí)行make install來(lái)安裝cv。
耶!現(xiàn)在,你的Linux工具箱中又多了個(gè)偉大的工具。 你學(xué)會(huì)么?親自去試試吧~