设置 SSH 登录欢迎语

小伙伴们有没有注意到,每次使用 ssh 指令登录到服务器时,终端都会清除当前的输出,并显示一条亲切的欢迎语:

  ______  __   _   __      __  _______   _____
 /_  __/ / /  / | / /___ _/  |/  /  _/  / ___/___  ______   _____  _____
  / /_  / /  /  |/ / __ `/ /|_/ // /    \__ \/ _ \/ ___/ | / / _ \/ ___/
 / / /_/ /  / /|  / /_/ / /  / // /    ___/ /  __/ /   | |/ /  __/ /
/_/\____/  /_/ |_/\__,_/_/  /_/___/   /____/\___/_/    |___/\___/_/


(base) account_name@server-442:~$

欢迎来到 TJ NaMI Server!

Figlet 模块

这个有趣的功能来自名为 Figlet 的包,官网

它的功能非常简单,将输入字词在终端中显示为加粗、倾斜等等样式,一般用于安装过程中的输出,或者包简介页面。

Note

“FIGlet is a program for making large letters out of ordinary text.”

  • 简单的使用方式

    # basic usage
    figlet [options] [messege]
    
    # sample
    ~ > figlet Nice weather today!
     _   _ _                               _   _
    | \ | (_) ___ ___  __      _____  __ _| |_| |__   ___ _ __
    |  \| | |/ __/ _ \ \ \ /\ / / _ \/ _` | __| '_ \ / _ \ '__|
    | |\  | | (_|  __/  \ V  V /  __/ (_| | |_| | | |  __/ |
    |_| \_|_|\___\___|   \_/\_/ \___|\__,_|\__|_| |_|\___|_|
    
     _            _             _
    | |_ ___   __| | __ _ _   _| |
    | __/ _ \ / _` |/ _` | | | | |
    | || (_) | (_| | (_| | |_| |_|
     \__\___/ \__,_|\__,_|\__, (_)
                        |___/
    
  • 参考官网的样式页面,使用 -f 参数指定不同的样式:

    # assign font style
    ~ > figlet -f slant Nice weather today!
        _   ___                                  __  __
       / | / (_)_______     _      _____  ____ _/ /_/ /_  ___  _____
      /  |/ / / ___/ _ \   | | /| / / _ \/ __ `/ __/ __ \/ _ \/ ___/
     / /|  / / /__/  __/   | |/ |/ /  __/ /_/ / /_/ / / /  __/ /
    /_/ |_/_/\___/\___/    |__/|__/\___/\__,_/\__/_/ /_/\___/_/
    
       __            __            __
      / /_____  ____/ /___ ___  __/ /
     / __/ __ \/ __  / __ `/ / / / /
    / /_/ /_/ / /_/ / /_/ / /_/ /_/
    \__/\____/\__,_/\__,_/\__, (_)
                         /____/
    

    Note

    这也是默认欢迎语的输出样式。

为何登录时会出现

清除当前终端输出、显示欢迎语的指令储存在 \etc\zsh\zshrc 引入的具体配置文件中。关于终端与配置文件,参见上一章节的相关文章。

...

clear
figlet -f slant "TJ NaMI Server"
echo -e "\e[6 q"

...
  • clear 清楚当前终端输出;

  • figlet 输出欢迎语;

  • echo 指令指定返回的、当前终端的光标样式。

这是一个面向所有用户的默认设置,仅有管理员账户可以更改相关配置文件。

Warning

由于 shell 登录时加载配置文件的顺序问题,从当前已登录账户切换至其他账户时,将不会重复加载该文件,也就不会重复出现这一欢迎语。