你有没有在Linux命令行中见过一辆火车呢?"猫跟老鼠"呢?编辑Linux命令行其实并不总是件严肃古板的事情。你完全可以用它自娱自乐。下面我们就跟大家一起讨论一下Linux命令行的特质。
假设:本文所有示例都使用Ubuntu Linux。文中描述命令行功能或许在你的Linux系统中是默认的。
有趣的Linux命令行功效
1. Linux"sl"命令行
尽管"sl"代表了"蒸汽机机头",但它是用来提醒那些命令行控们别把"ls"打成了"sl"。让我们看看在系统中运行这个命令的时候会怎样。
首先,我们安装的时候,要将其设置为不与标准Linux一起出现。用"apt-get"可以很方便地完成安装。
sudo apt-get install sl
大部分的安装需要sudo特权。完成安装后,在命令提示行中输入"sl"。
$sl
我们看到了动画蒸汽机机头从屏幕右边开往左边。这个火车头是用ASCLL字符绘制。
下面是我机器上的效果图:
这难道比我们平时操作Linux 命令行要难吗?我认为沉浸在工作中的Linux用户看到这幅意料之外的动画时,肯定会心一笑,并意识到自己的输入有误。
即便是这种简单的命令行也可以提供特定选项。
SYNOPSIS
sl [ -alFe ]
DESCRIPTION
sl Displays animations aimed to correct users who accidentally enter sl instead of ls. SL stands for Steam Locomotive.
OPTIONS
-a An accident seems to happen. You'll feel pity for people who cry for help.
-l shows little one.
-F It flies.
-e Allow interrupt by Ctrl+C.
还可以用 $alia ls=sl 给人弄个恶作剧。
2. Linux "yes" 命令
这里是一个在进程结束前一直打印输入字符串的命令。万一,用户不指定任何输入字符串,默认命令是"y"。
命令会这样运行:
$yes mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook mylinuxbook ^C$
用"ctrl+c"结束前台运行进程。
很奇怪,是吗?为什么我们希望命令在进程中一直打印字符串呢?尽管这样运行的方式很傻,但却不一定没用。我们可以用特定脚本中的"yes"命令,在这些脚本中,我们可以用重复操作作答。例如,我们可以在一组文件上进行操作,而Linux会要求我们对文件进行确认。我们可以用"yes"命令自动回复。
3. Linux"rev"命令
尽管非常简单,但我发现这行命令其实非常有意思。它会一行接一行地颠倒所输入的字符串。"rev"命令的名称来源于英文reverse。可以在命令指示符中输入"rev"然后按回车
$rev
终端会提示我们通过标准输入提供一个字符串。那么在每行后面我们就可以同时看到输出。
比如,我们输入"mylinuxbook"然后按回车。
mylinuxbook koobxunilym
为了回到命令提示符,可以使用"ctrl+c"。
我们看到颠倒的字符串直接出现在了下一行。然后,我们可以输入下一个希望出现颠倒效果的字符串,接着按回车,就可以得到标准输出了。
$ rev google elgoog linux is fun nuf si xunil ^C$
这行命令也可以以文件的形式输入,它会颠倒文件中的所有字符串,然后把输出结果打成标准输出。
$ cat strings.txt MyLinuxBook Linux is so much fun! Happy Birthday $ rev strings.txt kooBxuniLyM !nuf hcum os si xuniL yadhtriB yppaH
4. Linux"fortune" 命令
Fortune命令是在相同命令行中作为fortune cookies。我们运行这个命令的时候随机找了一条谚语或信息。
首先要对其进行安装,
$sudo apt-get install fortune
安装完成后,我们运行这个命令的方式就是:
$ fortune You have the power to influence all with whom you come in contact.
所以,依靠这个命令,Linux可以像个算命师一样。
5. Linux"figlet"命令
这个命令会用大写方式把我们输入的字符串显示在标题栏,显示效果由ASCII字符组成。
由于它不是标准设置,所以要先安装这一功能。
$sudo apt-get install figlet
看到字符串在终端上变成这样确实很有意思。
$ figlet mylinuxbook
你可以试着用"figlet"在脚本标头或源代码中添加标题栏。
6. Linux "toilet"命令
我不知道这个命令的名字源自哪里。但是它确实个五颜六色的命令。与figlet一样,它会把文本显示称标题栏,但是效果更好。
首先,安装:
$sudo apt-get install toilet
然后试一试这个简单的命令:
$toilet mylinuxbook
输入效果如下图所示:
它比figlet命令的效果更有艺术感。
不过,它还可以添加颜色。我们可以运行下列命令看到颜色:
$toilet -f mono12 -F metal mylinuxbook
效果如下图:
7. Linux "cowsay"命令
Cowsay命令是一个有趣的命令。它会用ASCII字符描绘牛,羊和许多其他动物。但是不是每个Linux发行版都带有这个命令。
使用下面的命令安装此命令:
$sudo apt-get install cowsay
现在,运行命令,并在命令中给出一个信息字符串。
$cowsay "Linux is fun"
我们看到了一个有趣的图像:
基本上,我们会看到一头牛告诉我们所输入的信息。尽管这个命令中只出现了cow,但其实它还可以有羊的效果。
$cowsay -f sheep "I too love linux"
效果如图:
只需用 '-l 就能看到它能提供的所有动物。输入:
$cowsay -l
系统会弹出下列信息:
Cow files in /usr/cowsay/cows: apt beavis.zen bong bud-frogs bunny calvin cheese cock cower daemon default dragon dragon-and-cow duck elephant elephant-in-snake eyes flaming-sheep ghostbusters gnu head-in hellokitty kiss kitty koala kosh luke-koala mech-and-cow meow milk moofasa moose mutilated pony pony-smaller ren sheep skeleton snowman sodomized-sheep stegosaurus stimpy suse three-eyes turkey turtle tux unipony unipony-smaller vader vader-koala www
因此,我们可以用 '-f' 输入以上信息中的任何动物。
为了使之更有趣,你可以让cowsay说出fortune信息,如输入:
$fortune | cowsay
则出现下面的效果:
8. Linux "cmatrix"命令
这个命令会在终端生成ASCII字符组成的矩阵风格的动画效果。
先安装:
$sudo apt-get install cmatrix
现在运行:
cmatrix
出来的效果很酷:
用"ctrl+c" 结束,生成动画。
9. Linux "oneko" 命令
这个命令是最好玩的。我们都知道"猫和老鼠"的动画,这个命令会让我们想起他们的追逐游戏。有了这行命令,我们可以看到一只猫在追老鼠(鼠标指示器)的效果。
先安装:
$sudo apt-get install oneko
运行这个命令,我们输入:
oneko
然后你就可以看到不管鼠标指示器放到哪里,Tom猫都会追着跑。下面是截图,不过不足以显示动态的效果:
即便我们切换应用,猫也不会离开老鼠。它甚至没有局限于终端。
想关掉这个的时候,只需在终端里用ctrl+c 结束进程即可。