2021-05-12 14:32:11
更多你所不知道的 Linux 命令
在這篇文章中和 Carla Schroder 一起探索 Linux 中的一些鮮為人知的強大工具。
本文是一篇關於一些有趣但鮮為人知的工具 termsaver
、pv
和 calendar
的文章。termsaver
是一個終端 ASCII 屏保,pv
能夠測量資料吞吐量並模擬輸入。Debian 的 calendar
擁有許多不同的日曆,並且你還可以制定你自己的日曆。
終端屏保
難道只有圖形桌面能夠擁有有趣的屏保嗎?現在,你可以通過安裝 termsaver
來享受 ASCII 屏保,比如 matrix(LCTT 譯註:電影《駭客帝國》中出現的駭客屏保)、時鐘、星球大戰以及兩個不太安全not-safe-for-work(NSFW)的屏保。 NSFW 屏保還有很多。
termsaver
可以從 Debian/Ubuntu 的包管理器中直接下載安裝,如果你使用別的不包含該軟體包的發行版比如 CentOS,那麼你可以從 termsaver.brunobraga.net 下載,然後按照安裝指導進行安裝。
執行 termsaver -h
來檢視一系列屏保:
randtxt displays word in random places on screen
starwars runs the asciimation StarWars movie
urlfetcher displays url contents with typing animation
quotes4all displays recent quotes from quotes4all.net
rssfeed displays rss feed information
matrix displays a matrix movie alike screensaver
clock displays a digital clock on screen
rfc randomly displays RFC contents
jokes4all displays recent jokes from jokes4all.net (NSFW)
asciiartfarts displays ascii images from asciiartfarts.com (NSFW)
programmer displays source code in typing animation
sysmon displays a graphical system monitor
圖片 1: 星球大戰屏保。
你可以通過執行命令 termsaver [屏保名]
來使用屏保,比如 termsaver matrix
,然後按 Ctrl+c
停止。你也可以通過執行 termsaver [屏保名] -h
命令來獲取關於某一個特定屏保的資訊。圖片 1 來自 startwars
屏保,它執行的是古老但受人喜愛的 Asciimation Wars 。
那些不太安全(NSFW)的屏保通過線上獲取資源的方式執行,我並不喜歡它們,但好訊息是,由於 termsaver
是一些 Python 指令碼檔案,因此,你可以很容易的利用它們連線到任何你想要的 RSS 資源。
pv
pv
命令是一個非常有趣的小工具但卻很實用。它的用途是監測資料複製的過程,比如,當你執行 rsync
命令或建立一個 tar
歸檔的時候。當你不帶任何選項執行 pv
命令時,預設引數為:
- -p :進程
- -t :時間,到當前總執行時間
- -e :預計完成時間,這往往是不準確的,因為
pv
通常不知道需要移動的資料的大小 - -r :速率計數器,或吞吐量
- -b :位元組計數器
一次 rsync
傳輸看起來像這樣:
$ rsync -av /home/carla/ /media/carla/backup/|pv
sending incremental filelist
[...]
103GiB0:02:48[615MiB/s][<=>
建立一個 tar 歸檔,就像下面這個例子:
$ tar-czf -/file/path|(pv> backup.tgz)
885MiB0:00:30[28.6MiB/s][<=>
pv
能夠監測進程,因此也可以監測 Web 瀏覽器的最大活動,令人驚訝的是,它產生了如此多的活動:
$ pv-d 3095
58:/home/carla/.pki/nssdb/key4.db:0 B 0:00:33
[0 B/s][<=>]
78:/home/carla/.config/chromium/Default/VisitedLinks:
256KiB0:00:33[0 B/s][<=>]
]
85:/home/carla/.con...romium/Default/data_reduction_proxy_leveldb/LOG:
298 B 0:00:33[0 B/s][<=>]
在網上,我偶然發現一個使用 pv
最有趣的方式:使用 pv
來回顯輸入的內容:
$ echo"typing random stuff to pipe through pv"|pv-qL 8
typing random stuff to pipe through pv
普通的 echo
命令會瞬間列印一整行內容。通過管道傳給 pv
之後能夠讓內容像是重新輸入一樣的顯示出來。我不知道這是否有實際的價值,但是我非常喜歡它。-L
選項控制回顯的速度,即多少位元組每秒。
pv
是一個非常古老且非常有趣的命令,這麼多年以來,它擁有了許多的選項,包括有趣的格式化選項,多種輸出選項,以及傳輸速度修改器。你可以通過 man pv
來檢視所有的選項。
/usr/bin/calendar
通過瀏覽 /usr/bin
目錄以及其他命令目錄和閱讀 man 手冊,你能夠學到很多東西。在 Debian/Ubuntu 上的 /usr/bin/calendar
是 BSD 日曆的一個變種,但它漏掉了月亮歷和太陽曆。它保留了多個日曆包括 calendar.computer, calendar.discordian, calendar.music
以及 calendar.lotr
。在我的系統上,man 手冊列出了 /usr/bin/calendar
裡存在的不同日曆。下面這個例子展示了指環王日曆接下來的 60 天:
$ calendar -f /usr/share/calendar/calendar.lotr -A 60
Apr17An unexpected party
Apr23Crowning of KingEllesar
May19Arwen leaves Lorian to wed KingEllesar
Jun11Sauron attacks Osgilliath
這些日曆是純文字檔案,因此,你可以輕鬆的建立你自己的日曆。最簡單的方式就是複製已經存在的日歷檔案的格式。你可以通過 man calendar
命令來檢視建立個人日歷檔案的更詳細的指導。
又一次很快走到了盡頭。你可以花費一些時間來瀏覽你的檔案系統,挖掘更多有趣的命令。
你可以通過來自 Linux 基金會和 edx 的免費課程 "Introduction to Linux" 來學習更過關於 Linux 的知識。
(題圖:CC Zero Pixabay)
via: https://www.linux.com/learn/intro-to-linux/2017/4/more-unknown-linux-commands
作者:CARLA SCHRODER 譯者:ucasFL 校對:wxy
本文永久更新連結地址:http://www.linuxidc.com/Linux/2017-12/149481.htm
相關文章