本文所有示例都使用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 结束进程即可。

结语

希望读者可以了解以上有趣的Linux命令行功能。如果你还知道更多诸如此类的有趣命令,不妨留言跟大家一起分享吧!

转载于:https://blog.51cto.com/yanzhe/1181126

linux枯燥命令行下的“有趣命令”相关推荐

  1. 详解Linux命令行下常用svn命令

    2019独角兽企业重金招聘Python工程师标准>>> 本文讲述了Linux命令行下常用svn命令的使用方法,希望对您有所帮助. 1.Linux命令行下将文件checkout到本地目 ...

  2. Linux命令行下常用svn命令的使用方法[转自:www.hackbase.com]

    本文讲述了Linux命令行下常用svn命令的使用方法,希望对您有所帮助. 1.Linux命令行下将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如: ...

  3. Windows命令行下常用网络命令解释大全

    命令行下常用网络命令解释大全 1.Arp 显示和修改"地址解析协议"(ARP) 所使用的到以太网的 IP 或令牌环物理地址翻译表.该命令只有在安装了 TCP/IP 协议之后才可用. ...

  4. java test abc_DOS命令行下成功执行命令:java Test abc 21,则以下描述正确的是()

    [单选题]假设有两个整数x和y,表达式x>=y?x:y的含义是() [单选题]下列哪项不是Java语言的关键字?() [判断题]每项经济业务发生后,都会引起企业的资产和权益总额发生增减变动,但会 ...

  5. 命令行下使用cl命令设置

    此文档集合了三篇文章的内容,分别是: http://www.xue5.com/Developer/C++/665229.html http://blog.csdn.net/daisy19900111/ ...

  6. windows命令行下通过cl命令编译动态链接库示例

    一般在windows下写一个c/c++的动态链接库,我们都是在visual studio或着visual c++这些ide里面进行编译和生成的,今天介绍,如何通过命令行来实现手动编译和生成动态链接库. ...

  7. 命令行下使用javah命令生成.h文件,出现“错误: 无法访问android.app.Activity 找不到android.app.Activity的类文件”的解决方法...

    在学习NDK中,当我在项目的bin/classes目录下使用javah命令生成头文件时,出现了"错误: 无法访问android.app.Activity 找不到android.app.Act ...

  8. DOS命令行下输入mount命令

    在DOS命令行输入mount命令如果在未作更改的情况会得到报错 在没有安装windos的扩展功能的时候DOS默认是没有这个指令的 在windos Server 的版本中需要在服务器管理中添加文件服务器 ...

  9. redis在linux命令行下连续进行命令操作

    redis-cli -a password -n 9 keys "friend*" -a 是auth -n 是选择数据池 keys就是找key啦. 要是后面再跟上 xargs */ ...

最新文章

  1. ASA基本配置实验报告
  2. Python只需要三十行代码,打造一款简单的人工语音对话
  3. Sys.WebForms.PageRequestManagerServerErrorException(status code 500 OR 12031)
  4. 独立开发者分享:游戏本地化的6个建议
  5. python中break和continue区别_Shell break和continue跳出循环详解
  6. 【LeetCode】19. Remove Nth Node From End of List
  7. leetcode 452. 用最少数量的箭引爆气球(贪心算法)
  8. MFC关键技术-命令传递机制
  9. 13.Azure流量管理器(上)
  10. leetcode 130 python
  11. 「大数据+」依然火热!BDTC首日爆点有点多!
  12. Linux系统安装完成后创建交换空间
  13. asp.net MVC之 自定义过滤器(Filter)
  14. 大学计算机python考试题二叉树_leetcode 二叉树相关习题总结
  15. javascript设计模式——Module
  16. FFmpeg实现音视频同步的精准片段拼接
  17. WinRAR 5.5 破解方法 - 自己动手, 更放心
  18. Chain ‘MASQUERADE‘ does not exist 报错解决
  19. 解决微信小程序不在request合法域名列表中的问题
  20. 佩尔方程及其在一类二元二次丢番图方程的推广

热门文章

  1. redis10--主从模式
  2. Codeforces Round #313 (Div. 1) A. Gerald's Hexagon 数学题
  3. 状态栏和navigationbar 关联上,结构体总是通过被复制的方式在代码中传递,因此请不要使用引用计数。...
  4. 解决DesignMode不能正确反应是否处于设计模式的问题
  5. 近期找工作无果的一些感想
  6. 使用com.alibaba.fastjson.JSONObject构造简单的JSON数据
  7. python defaultdict 类属性_Python collections.defaultdict模块用法详解
  8. vb devcon获取u盘信息_iOS 13 U盘越狱法,卡代码及U盘终极解决
  9. DHCP 不同情况的操作
  10. 江湖不再平静---51CTO学院停服公告