欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Linux 命令分享!(干货)

程序员文章站 2022-05-06 22:58:41
终端屏保 难道只有图形桌面能够拥有有趣的屏保吗?现在,你可以通过安装 termsaver 来享受 ASCII 屏保,比如 matrix(LCTT 译注:电影《黑客帝国》中出现的黑客屏保)、时...

终端屏保

难道只有图形桌面能够拥有有趣的屏保吗?现在,你可以通过安装 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 Star Wars 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

你可以通过运行命令 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 file list
[...]
103GiB 0:02:48 [ 615MiB/s] [ < =>

创建一个 tar 归档,就像下面这个例子:

$ tar -czf - /file/path| (pv > backup.tgz)
885MiB 0: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/Visited Links:
256KiB 0: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
Apr 17 An unexpected party
Apr 23 Crowning of King Ellesar
May 19 Arwen leaves Lorian to wed King Ellesar
Jun 11 Sauron attacks Osgilliath

这些日历是纯文本文件,因此,你可以轻松的创建你自己的日历。最简单的方式就是复制已经存在的日历文件的格式。你可以通过 man calendar 命令来查看创建个人日历文件的更详细的指导。