你有沒有在Linux命令行中見過一輛火車呢?"貓跟老鼠"呢?編輯Linux命令行其實并不總是件嚴肅古板的事情。你完全可以用它自娛自樂。下面我們就跟大家一起討論一下Linux命令行的特質。
假設:本文所有示例都使用Ubuntu Linux。文中描述命令行功能或許在你的Linux系統(tǒng)中是默認的。
有趣的Linux命令行功效
1. Linux"sl"命令行
盡管"sl"代表了"蒸汽機機頭",但它是用來提醒那些命令行控們別把"ls"打成了"sl"。讓我們看看在系統(tǒng)中運行這個命令的時候會怎樣。
首先,我們安裝的時候,要將其設置為不與標準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"命令
盡管非常簡單,但我發(fā)現這行命令其實非常有意思。它會一行接一行地顛倒所輸入的字符串。"rev"命令的名稱來源于英文reverse??梢栽诿钪甘痉休斎?quot;rev"然后按回車
$rev
終端會提示我們通過標準輸入提供一個字符串。那么在每行后面我們就可以同時看到輸出。
比如,我們輸入"mylinuxbook"然后按回車。
mylinuxbook
koobxunilym
為了回到命令提示符,可以使用"ctrl+c"。
我們看到顛倒的字符串直接出現在了下一行。然后,我們可以輸入下一個希望出現顛倒效果的字符串,接著按回車,就可以得到標準輸出了。
$ rev
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發(fā)行版都帶有這個命令。
使用下面的命令安裝此命令:
$sudo apt-get install cowsay
現在,運行命令,并在命令中給出一個信息字符串。
$cowsay "Linux is fun"
我們看到了一個有趣的圖像:
基本上,我們會看到一頭牛告訴我們所輸入的信息。盡管這個命令中只出現了cow,但其實它還可以有羊的效果。
$cowsay -f sheep "I too love linux"
效果如圖:
只需用 '-l 就能看到它能提供的所有動物。輸入:
$cowsay -l
系統(tǒng)會彈出下列信息:
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" 命令