好消息:本人博客已开通。很多其它博客请进 http://swplzj.github.io

今天抽闲玩了一下Shell。发现几个比較有意思的。记录一下。

  • 终端彩虹字:lolcat
  • 图形化文字:figlet
  • 幸运人生格言:fortune
  • ASCII牛说:Cowsay
  • 黑客帝国中瀑布流文字:cmatrix
  • 写在最后

非常有趣的 Shell, 值得一试;

lolcat

安装

因为 Lolcat 是一个 ruby gem 程序,所以在你的系统中必须安装有最新版本号的 ruby

安装ruby过程不再详述;

使用以下命令进行安装lolcat

gem install lolcat

使用

lolcat作用是在终端中为文本加入彩虹般的色彩。安装完毕之后就能够使用了。

首先看一下lolcat的帮助文档

lolcat --help

接着查看日历

cal | lolcat

高级技巧

我们还能够给文本赋予彩虹颜色的动画:

echo Hello World | lolcat -a -d 500

别名技巧:alias

我们发现,假如一个常常使用的打印命令,比方ls,想打印彩虹色彩,我们每次都须要在敲完ls之后再加上lolcat。也就是ls | lolcat,这样非常不方便。这时我们就能够想到别名,alias。我们能够设定一些别名:

alias ls="ls | lolcat"

可是。有一个问题来了。仅仅要把终端这个标签关闭掉或者重新启动终端。我们设置的别名就失效了,也就是说别名仅仅针对当前标签页有效。

所以,接下来我们要设置alias永久有效。我们输入命令cd ~到用户主文件夹,找到.bash_profile文件。假设没有。我们创建一个

touch .bash_profile

然后在.bash_profile中加入我们的别名

alias ls="ls | lolcat"

保存,关闭,重新启动Terminal,看一下效果:

BTW

假如你的终端没有设置配色方案,能够选择自带的主题:Silver Aerogel,设置方法:找到.bash_profile文件,加入例如以下代码:

# for color
export CLICOLOR=1
# \h:\W \u\$
export PS1='\[\033[01;33m\]\u@\h\[\033[01;31m\] \W\$\[\033[00m\] '

保存,重新启动终端,就能够看到美丽的配色方案了。

figlet

安装

我们使用 Homebrew来安装此插件,

brew install figlet

使用

  • figlet
lizhenjie@localhost ~$ figlet Leo Lee
_ _
| | ___ ___ | | ___ ___
| | / _ \/ _ \ | | / _ \/ _ \
| |__| __/ (_) | | |__| __/ __/
|_____\___|\___/ |_____\___|\___|
  • figlist:列出全部字体名称
lizhenjie@localhost ~$ figlist
Default font: standard
Font directory: /usr/local/Cellar/figlet/2.2.5/share/figlet/fonts
Figlet fonts in this directory:
3-d
3x5
5lineoblique
acrobatic
alligator
alligator2
alphabet
...
  • showfigfonts:展示每一个字体效果。
lizhenjie@localhost ~$ showfigfonts
3-d :
**** **
*/// * /**
/ /* /**
*** ***** ******
/// *///// **///**
* /* /** /**
/ **** //******
//// ////// 3x5 : ### ###
# # # #
## # ###
# # # #
### ###
...

仅仅能列两种字体了。太多了。

当然,能够结合上面的 lolcat使用更炫哦。

Dashboard Figlet

安装过程中,意外发现Figlet也有Dashboard中的插件。能够到苹果官网下载。使用起来也是非常方便的。

fortune

安装

brew install fortune

使用方法

lizhenjie@localhost ~$ fortune
"To take a significant step forward, you must make a series of finite
improvements."
-- Donald J. Atwood, General Motors

结合lolcat使用:

lizhenjie@localhost ~$ fortune | lolcat

Cowsay

安装

brew install cowsay

使用方法

  • cowsay能够输出一个在终端用ASCII码组成的小牛,这个小牛会说出你想要它说的话。

lizhenjie@localhost ~$ cowsay God help them who help themselves!
____________________________________
< God help them who help themselves! >
------------------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
lizhenjie@localhost ~$
  • 罗列出全部能够画出的动物形状
lizhenjie@localhost ~$ cowsay -l
Cow files in /usr/local/Cellar/cowsay/3.03/share/cows:
beavis.zen bong bud-frogs bunny cheese cower daemon default dragon
dragon-and-cow elephant elephant-in-snake eyes flaming-sheep ghostbusters
head-in hellokitty kiss kitty koala kosh luke-koala meow milk moofasa moose
mutilated ren satanic sheep skeleton small sodomized stegosaurus stimpy
supermilker surgery telebears three-eyes turkey turtle tux udder vader
vader-koala www
  • 使用其它动物形状
lizhenjie@localhost ~$ cowsay -f dragon LEO
_____
< LEO >
-----
\ / \ //\
\ |\___/| / \// \\
/0 0 \__ / // | \ \
/ / \/_/ // | \ \
@_^_@'/ \/_ // | \ \
//_^_/ \/_ // | \ \
( //) | \/// | \ \
( / /) _|_ / ) // | \ _\
( // /) '/,_ _ _/ ( ; -. | _ _\.-~ .-~~~^-.
(( / / )) ,-{ _ `-.|.-~-. .~ `.
(( // / )) '/\ / ~-. _ .-~ .-~^-. \
(( /// )) `. { } / \ \
(( / )) .----~-.\ \-' .~ \ `. \^-.
///.----..> \ _ -~ `. ^-` ^-_
///-._ _ _ _ _ _ _}^ - - - - ~ ~-- ,.-~
/.-~
  • 结合fortune使用
lizhenjie@localhost ~$ fortune | cowsay
_________________________________________
/ We are all worms. But I do believe I am \
| a glowworm. |
| |
\ -- Winston Churchill /
-----------------------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
  • 结合lolcat使用:

  • 结合lolcat + fortune + cowsay

是不是非常奇妙!!。

cmatrix

安装

黑客帝国‘Hacker’风格的桌面的生动画面

brew install cmatrix

使用方法

cmatrix

其它使用方法能够使用 man查看。

写在最后

上面的命令可能在实际中对自己没有多大用途,可是。在配置的过程中,学到了不少东西,还添加了对 Shell的了解和兴趣,我们对自己的定位不能仅仅局限与写代码,而是让自己多去了解自己不了解的。时常去走出自己的舒适区,找一些有趣有挑战性的东西去做,总之,保证自己一直在进步。加油!

好消息:本人博客已开通。很多其它博客请进 http://swplzj.github.io

Bash - 趣味Shell的更多相关文章

  1. 单行bash、shell、perl命令

    主题:单行经典bash.shell.perl命令 作者:luomg 摘要: 会陆陆续的写自己工作中的常用有意思的命令,争取你能看完后就能搞定常见操作, 且尽量自少提供基本shell.perl的实现方式 ...

  2. 什么是shell? bash和shell有什么关系?

    什么是shell? bash和shell有什么关系? 博客分类: Linux   什么是Shell?      shell是你(用户)和Linux(或者更准确的说,是你和Linux内核)之间的接口程序 ...

  3. bash和shell的关系

    bash是borne again shell的缩写,它是shell的一种,Linux上默认采用的是bash. shell脚本中的方法带不带function的区别,例如: function foo () ...

  4. bash反弹shell检测

    1.进程 file descriptor 异常检测 检测 file descriptor 是否指向一个socket 以重定向+/dev/tcp Bash反弹Shell攻击方式为例,这类反弹shell的 ...

  5. shell 编程 && bash 简介(shell 变量、shell操作环境、数据流重导向、管线命令、shell script)

    如何学习一门编程语言 数据类型 运算符 关键字 1 认识BASH 这个shell linux是操作系统核心,用户通过shell与核心进行沟通,达到我们想要的目的.硬件.核心.用户之间的关系: 原理:所 ...

  6. 用bash反弹shell

    用bash反弹shell 受害主机:linux系统 攻击机:需要安装netcat(nc) 受害主机执行:ifconfig  ## 查看受害主机ip 攻击机执行:nc -lvp 19999 ## 在攻击 ...

  7. 修改shell 将当前shell(默认是bash B SHELL )改为csh C SHELL

     在修改当前shell时,用命令: usermod -s  /bin/csh   home     home 为 你所想要改变的用户地址     此处home 为家目录,一般自己创建的用户都会在家目录 ...

  8. 认识bash这个shell

    我们通过shell将我们输入的命令与内核通信,好让内核可以控制硬件来正确无误地工作bash是我们Linux默认的shell 用户界面(Shell,application)--------核心(Kern ...

  9. Linux 学习记录 四(Bash 和 Shell scirpt)

    一.什么是 Shell? 狭义的shell指的是指令列方面的软件,包括基本的Linux操作窗口Bash等,广义的shell则包括 图形接口的软件,因为图形接口其实也可以操作各种驱动程序来呼叫核心进行工 ...

随机推荐

  1. bat 十进制转16进制

    @echo offset code=0123456789ABCDEF:enterset /p num=输入你要转换的十进制数字:echo %num%|findstr "[^0-9]" ...

  2. Hibernate学习笔记五:反向工程快速开发

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6768513.html  一:反向工程 Myeclipse提供由 数据库表 生成 java pojo 和 hib ...

  3. 语法——原型prototype深入理解

    console.log('-----------------------------Object'); var obj = {}; console.log(obj.__proto__ === Obje ...

  4. mvn test

    mvn -B install -Dmaven.test.skip=true -Dautoconfig.skipmvn -B org.codehaus.mojo:cobertura-maven-plug ...

  5. python之模块contextlib 加强with语句而存在

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python之模块contextlib,为加强with语句而存在 #特别注意:python3和python2 ...

  6. jquery利用appendTo动态创建元素

    动态创建元素可以说是DOM中常做的事情,下面我来介绍在jquery中利用appendTo来动态创建元素,有需要的朋友可参考参考. 当HTML字符串是没有属性的元素是, 内部使用document.cre ...

  7. Java用freemarker导出word

    概述 最近一个项目要导出word文档,折腾老半天,发现还是用freemarker的模板来搞比较方便省事,现总结一下关键步骤,供大家参考,这里是一个简单的试卷生成例子. 详细 代码下载:http://w ...

  8. ios用户登录记住密码

    登录 记录已登录用户步骤,存入偏好设置中存储放入一个数组. 具体存储 :存储用户到偏好设置中,其中用户是一个数组 向服务器响应客户端后的一些操作 (如果响应数据成功)其中用户和密码是一一对应的 .1先 ...

  9. lua lua_settable

    void lua_settable (lua_State *L, int index); Does the equivalent to t[k] = v, where t is the value a ...

  10. LUA pcall 多个返回值

    You call lua_pcall with the number of arguments you are passing and the number of results you want. ...