Bash - 趣味Shell
好消息:本人博客已开通。很多其它博客请进 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的更多相关文章
- 单行bash、shell、perl命令
主题:单行经典bash.shell.perl命令 作者:luomg 摘要: 会陆陆续的写自己工作中的常用有意思的命令,争取你能看完后就能搞定常见操作, 且尽量自少提供基本shell.perl的实现方式 ...
- 什么是shell? bash和shell有什么关系?
什么是shell? bash和shell有什么关系? 博客分类: Linux 什么是Shell? shell是你(用户)和Linux(或者更准确的说,是你和Linux内核)之间的接口程序 ...
- bash和shell的关系
bash是borne again shell的缩写,它是shell的一种,Linux上默认采用的是bash. shell脚本中的方法带不带function的区别,例如: function foo () ...
- bash反弹shell检测
1.进程 file descriptor 异常检测 检测 file descriptor 是否指向一个socket 以重定向+/dev/tcp Bash反弹Shell攻击方式为例,这类反弹shell的 ...
- shell 编程 && bash 简介(shell 变量、shell操作环境、数据流重导向、管线命令、shell script)
如何学习一门编程语言 数据类型 运算符 关键字 1 认识BASH 这个shell linux是操作系统核心,用户通过shell与核心进行沟通,达到我们想要的目的.硬件.核心.用户之间的关系: 原理:所 ...
- 用bash反弹shell
用bash反弹shell 受害主机:linux系统 攻击机:需要安装netcat(nc) 受害主机执行:ifconfig ## 查看受害主机ip 攻击机执行:nc -lvp 19999 ## 在攻击 ...
- 修改shell 将当前shell(默认是bash B SHELL )改为csh C SHELL
在修改当前shell时,用命令: usermod -s /bin/csh home home 为 你所想要改变的用户地址 此处home 为家目录,一般自己创建的用户都会在家目录 ...
- 认识bash这个shell
我们通过shell将我们输入的命令与内核通信,好让内核可以控制硬件来正确无误地工作bash是我们Linux默认的shell 用户界面(Shell,application)--------核心(Kern ...
- Linux 学习记录 四(Bash 和 Shell scirpt)
一.什么是 Shell? 狭义的shell指的是指令列方面的软件,包括基本的Linux操作窗口Bash等,广义的shell则包括 图形接口的软件,因为图形接口其实也可以操作各种驱动程序来呼叫核心进行工 ...
随机推荐
- window批处理杀死指定端口进程
@echo off setlocal enabledelayedexpansion set /p port=请输入端口号: for /f "tokens=1-5" %%a in ( ...
- RN组件备忘录
1:ActivityIndicator:圆形的loading提示符号. 2:Button:按钮 3:FlatList:高性能列表组件,支持下拉刷新. 4:Image:图片组件,能显示 网络图片.静态资 ...
- XMLHttpRequest HTTP请求的返回码为0 http status = 0
由于用户在http返回前关闭/取消,或者防火墙等原因,会造成http请求没有status信息.w3c有相应的说明:http://www.w3.org/TR/XMLHttpRequest/#the-st ...
- java 截取字符串
java 截取字符串 CreationTime--2018年7月17日16点37分 Author:Marydon 1.去除最后一个字符 方式一:String 方式二:StringBuilder.S ...
- windows下 jemalloc编译
准备 Windows下使用VS2015进行编译,需要使用cmake构建版本.(如果有cygwin,在其中执行VS的vcvarsall.bat后使用"CC=cl ./autogen.sh&qu ...
- [Dubbo实战]dubbo + zookeeper + spring 实战 (转)
这里最熟悉的就是spring了,项目中应用很多.dubbo是一个实现分布式的框架,zookeeper是注册中心.给我的感觉就像多对多关系的两者表,zookeeper相当于第三张表维护关系.下面通过一个 ...
- 调用布局View的performClick()方法
修改之前的xml片段. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/an ...
- 【mysql】关于ICP、MRR、BKA等特性
一.Index Condition Pushdown(ICP) Index Condition Pushdown (ICP)是mysql使用索引从表中检索行数据的一种优化方式,从mysql5.6开始支 ...
- TCP KeepAlive的几个附加选项
TCP_KEEPALIVE选项只是一个开关,Linux中默认的Keepalive的选项如下: $sudo sysctl -a | grep keepalive net.ipv4.tcp_keepali ...
- swift3 生成UUID
swift3 生成UUID //获取UUID func getUUID() -> String { let uuidRef = CFUUIDCreate(nil) let uuidStringR ...