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则包括 图形接口的软件,因为图形接口其实也可以操作各种驱动程序来呼叫核心进行工 ...
随机推荐
- Jsp重定向(response.sendRedirect())和转发(request.getRequestDispatcher().forward(request,r)的差别
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...
- Java DES 加解密("DES/CBC/PKCS5Padding")
/** * DES加密 * * @param data 加密数据 * @param key 密钥 * @return 返回加密后的数据 */ public static byte[] desEncry ...
- V-rep学习笔记:vrep中的实用工具
在V-REP的模型浏览器中可以找到一个工具文件夹tools,点开后会在下面一栏中显示许多方框图,将这些方框拖到场景模型中可以实现一些特定的功能,方便建模或其它操作. Center of mass vi ...
- Jquery 获取对象的几种方式(转载)
1.先讲讲JQuery的概念 JQuery首先是由一个 America 的叫什么 John Resig的人创建的,后来又很多的JS高手也加入了这个团队.其实 JQuery是一个JavaScript的类 ...
- foxmail怎么设置个性签名
foxmail是我们日常使用的邮件客户端之一,相信很多的朋友都在使用.那么,我们在发邮件的时候,很多朋友都会使用一个个性签名,那么对于foxmail的邮件签名怎么来设置呢?今天笔者就来给大家分享一下, ...
- 【MySQL】MySQL主从库配置和主库宕机解决方案
1.转载:https://blog.csdn.net/zfl589778/article/details/51441719/ 2.效果:亲测有效,数据写入成功. 3.主机宕机后,如果不是长时间宕机,且 ...
- HDUOJ---老人是真饿了
悼念512汶川大地震遇难同胞——老人是真饿了 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/O ...
- JavaScript 消息框,警告框,确认框,提示框
1.警告框 警告框经常用于确保用户可以得到某些信息. 当警告框出现后,用户需要点击确定按钮才能继续进行操作. 语法: alert("文本") 2.确认框 确认框用于使用户可以验证或 ...
- fwrite()的返回值随着格式的不同返回值也不同;
常用地函数fwrite fwrite()的返回值随着格式的不同返回值也不同: 也是最近涉及到代码才注意到的,汗!!! 转载了一篇文章来说明这个问题:文章地址:http://blog.csdn.net/ ...
- 进阶之路(基础篇) - 011 arduino api基础手册
arduino 函数 api 程序结构 在Arduino中, 标准的程序入口main函数在内部被定义, 用户只需要关心以下两个函数:void setup()void loop()setup() 函数用 ...