CentOS安装fortune+cowsay实现cool登录欢迎
2017-03-17 本文已影响1281人
keith666
0. 前言
今天突然想自定义下登录欢迎标语,结果发现centos 7.2上没带fortune,用yum也找不到fortune和cowsay这两个项目,现将安装过程记录下,以供分享和后续查看.
效果如下:
1. fortune安装
fortune是一个展示随机名言的程序,具体定义看这里:fortune (Unix)
这里使用的是fortune-mod,下载rpm包后使用rpm -i fortune-mod*.rpm命令安装即可.
但是由于这个包需要依赖libc.so.6(GLIBC_2.14)(64bit),librecode.so.0()(64bit)和rtld(GNU_HASH),所以如果出现错误,看下是缺少了哪个包,下载相应的包然后安装,之后再安装fortune-mode即可.
安装后效果如下:
[aa@aa]$ fortune
Behind every argument is someone's ignorance.
-- Louis Brandeis
2. 安装cowsay
cowsay是一头牛头上显示一句自定义语句,也可以是一个其他的动物,具体看这里:cowsay
这里使用的是github上的这个javascript项目cowsay, 直接使用命令npm install -g cowsay即可安装,可能需要root权限.
安装完后,效果如下:
[aa@aa]$cowsay srsly dude, why?
__________________
< srsly dude, why? >
------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
注意使用npm安装的cowsay的路径,可以使用
npm root -g查看全局的安装路径.
3. 修改登录后提示
关于如何在修改登录后提示的方式有很多种,可以直接在.bashrc中添加代码,但是这不推荐,推荐的做法是在/etc/profile.d文件夹下新建一个.sh文件,然后将代码写入到.sh文件中.
如我的.sh文件: cowsay.sh
#!bin/bash
# call cowsay after login
animal=$(ls /usr/lib/node_modules/cowsay/cows | shuf -n 1)
declare -i name_length=$(#animal)-4
# pass sentence to cowsay with random animal
fortune | cowsay -f ${animal:0,$name_length}
说明:
-
/usr/lib/node_modules/cowsay/cows:这个路径是这个node项目cowsay的安装路径,其他方式安装的路径不一定是这个. -
shuf -n 1: 将前面的列表进行随机排序,然后返回第一个. -
${animal:0,$name_length}:由于获取的animal带有.cow后缀,故用该方式去掉后缀.
我上述的需求是每次随机一个动物,如果无需随机动物这个需求,更简单,如下:
#!bin/bash
fortune | cowsay
这样就可以实现登录酷炫的效果了.