CentOS安装fortune+cowsay实现cool登录欢迎语

原文地址: https://www.jianshu.com/p/d0585ce8e78c

0. 前言

今天突然想自定义下登录欢迎标语,结果发现centos 7.2上没带fortune,用yum也找不到fortune和cowsay这两个项目,现将安装过程记录下,以供分享和后续查看.

效果如下:

CentOS安装fortune+cowsay实现cool登录欢迎语_第1张图片

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}

说明:

  1. /usr/lib/node_modules/cowsay/cows:这个路径是这个node项目cowsay的安装路径,其他方式安装的路径不一定是这个.
  2. shuf -n 1: 将前面的列表进行随机排序,然后返回第一个.
  3. ${animal:0,$name_length}:由于获取的animal带有.cow后缀,故用该方式去掉后缀.

我上述的需求是每次随机一个动物,如果无需随机动物这个需求,更简单,如下:

#!bin/bash

fortune | cowsay

这样就可以实现登录酷炫的效果了.

你可能感兴趣的:(CentOS安装fortune+cowsay实现cool登录欢迎语)