博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux需要装?那就和我一起来配置一个动态的MOTD登陆效果吧
阅读量:5260 次
发布时间:2019-06-14

本文共 2258 字,大约阅读时间需要 7 分钟。

说到motd,熟悉linux系统的同学应该熟悉,motd它是linux系统上的一个普通的文件,在linux系统上的/etc/motd文件 .作用于:每次系统需要登陆时,通过终端展示一些消息给登陆用户。

然而,通过在motd文件中,添加的消息只能是静态的,功能也不够直观,也不够炫,为了实现这些效果,就有必要来作一个动态的motd信息效果,这节手记Jeson就教大家如何制作动态的motd登陆效果。

1. 制作登陆的logo
其实就是就是用一些好看了符号来拼接,Jeson制作的如下(我的博客logo),我们用vim来新建一个空文件 login_logo.txt,进行编辑并保存。我们应该:
(1) logo尽量简单明了,不要复杂
(2) 如果不想自己设计,那就去copy别人的吧,这里提供给大家去参考。

_             (_) _ _ __ ___ __ __ __ __ '_ ` _ \ / \ / \ / / / / __ _ _ \__/ \__/ \_\ \_\

2. Shell脚本

写一段shell脚本完成,用于动态消息内容的生成。
我写的如下,供大家参考:

########################################################################## File Name: /opt/work/test/login_bash_ok.sh# Program function: # Author:Jeson # mail:jeson@imoocc.com # Created Time: 四 10/ 6 10:41:58 2016 # * Variables user=$USER path=$PWD home=$HOME # * Check if we're somewhere in /home if [ ! -d ${ home} ];then return 0 fi # * Calculate last login lastlog=`lastlog -u ${user}grep ${user}awk '{for(i=3;i<=NF;++i) printf("%s ",$i)}'` # # * ASCII head cat /opt/work/login_logo.txt # * Print Output echo " ::::::::::::::::::::::::::::::::::-STATUS-::::::::::::::::::::::::::::::::::" reset_terminal=$(tput sgr0) # * Check RAM and SWAP Usages app_mem_usages=$(awk '/MemTotal/{total=$2}/MemFree/{free=$2}/Buffers/{buffers=$2}/^Cached/{cached=$2}END{print (total-free-buffers-cached)/1024}' /proc/meminfo) echo -e '\E[32m'" Application Memmory Usages :" $reset_terminal ${ app_mem_usages} all_mem_usages=$(awk '/MemTotal/{total=$2}/MemFree/{free=$2}END{print (total-free)/1024}' /proc/meminfo) echo -e '\E[32m'" System Memmory Usages :" $reset_terminal ${ all_mem_usages} # * Check Disk Usages disk_device=$(fdisk -lgrep Diskgrep -vE 'identifier'grep -ioE '\/dev\/[a-z]{2}'uniq ) diskusages=$(df -PH grep -vE '^Filesystemtmpfscdrom' awk '{ print $1 " " $5 }') echo -e '\E[32m'" Disk Usages :" $reset_terminal ${ diskusages} # * Check Load Average loadaverage=$(top -n 1 -b grep "load average:" awk '{print $(NF-2) $(NF-1) $NF}') echo -e '\E[32m'""])])])]'`'>)}'`

修改完毕后,执行查看输出是否正常

3. 修改配置

如果想,指定某个用户登陆然后执行并生成,那么需要将执行脚本对应的命令加入到~/.bashrc文件中。
[jeson@localhost ~]$ vim ~/.bashrc
加入执行语句:
sh /opt/work/login_bash.sh

另外,如果想,作为全局的用户都有效,那么就需要加入到/etc/bashrc配置中。

4. 验证

1)退出当前登陆终端
2)用设置的指定用户登陆,如果有出现了本手记前中出现的登陆信息,那么说明顺利完成。

转载于:https://www.cnblogs.com/linuxx/p/8468950.html

你可能感兴趣的文章
分享一些网页地址
查看>>
第二个冲刺5.0
查看>>
Xilinx_7_Series_GTX简介
查看>>
计负均正
查看>>
JUC-辅助工具类
查看>>
多线程以及线程池1
查看>>
15软工课后作业01 P18 第四题
查看>>
DataGrid 显示选中的item
查看>>
loadrunner常用函数整理
查看>>
第85节:Java中的JavaScript
查看>>
c#系统中类的方法 Console、Object,ToolStripDropDownItem,string
查看>>
【windows核心编程】DLL相关(1)
查看>>
IOS NSThread 线程间通信
查看>>
11.14
查看>>
CAS单点登录配置[4]:客户端配置
查看>>
Flex beta2+XFire开发实例 (三)
查看>>
jira汉化
查看>>
opencv 训练自己的分类器汇总
查看>>
codeforces
查看>>
tn文本分析语言(四) 实现自然语言计算器
查看>>