显示linux开机时间的脚本
最初的讨论是linux吧吧友@九十钩圈凯_ 发布的主题贴《加到自启动可以看开机时间的玩意》
并给出显示开机秒数的shell语句
[shell]
[ $_UTED = 0 ] || notify-send -i clock "$(cat /proc/uptime|sed 's/ .*//'|xargs echo -e '本次开机时间:n')秒" && export _UTED=0
[/shell]
而后由@realasking改进,修改为显示分钟和秒数,更贴心,不过很少见到开机时间大于60s的说

(咳咳...我只是为了截个图...请忽视上面的数字吧)
[shell]
[ $_UTED = 0 ] ||ttime=`cat /proc/uptime|cut -f1 -d"."|xargs`&&let min=ttime/60&&let sec=ttime%60&&if [ $min -gt 0 ]; then outpara=" $min 分 $sec 秒";else outpara=" $sec 秒";fi&¬ify-send -i clock "本次开机时间:$(echo "$outpara")"&& export _UTED=0
[/shell]
而后大狮兄(@realasking)写了个KDE环境下的脚本,有更多的显示功能
主题贴地址:《我也发个开机看时间的脚本》
(由于博主正在EOS单奔,暂未测试)

[shell]
#!/bin/bash
#systemd 开机时间测试和显示脚本
#编写:realasking
#根据百度贴吧 九十钩圈凯_ 的看开机时间的脚本改进扩展得到
#他的原帖位置是:http://tieba.baidu.com/p/1959641775
outputtime(){
t_tmp=`echo $stmp`&&let tmin=t_tmp/60&&let tsec=t_tmp%60
if [ $tmin -gt 0 ]
then
outpara="$tmin 分 $tsec 秒"
else
outpara="$t_tmp 秒"
fi
}
outDS(){
DSession=`echo ${DESKTOP_SESSION}`
if [ $DSession == "kde-plasma" ]
then
dtmp=`kded4 -v|tail -n +2|head -n +1|cut -d":" -f2`
DSession=$DSession" 运行版本:"$dtmp
fi
}
if [ -z $_UTED ]
then
stall=`cat /proc/uptime|cut -f1 -d"."`
stmp=`echo $stall`
outputtime
outtpara=$outpara
stt_tmp=`systemd-analyze |cut -d" " -f13|cut -d"m" -f1`
stt=`echo "$stt_tmp / 1000"|bc`
stmp=`echo $stt`
outputtime
outspara=$outpara
stdesk=`echo "$stall - ${stt}"|bc`
stmp=`echo $stdesk`
outputtime
outdpara=$outpara
outDS
notify-send "欢迎${LOGNAME}登录" "开机时间: ${outspara}
进入桌面时间: ${outdpara}
启动总耗时: ${outtpara}
桌面: ${DSession}"
fi
export _UTED=0
[/shell]
而后,故事还没有结束,在L吧的重基佬异口同声的“不显示击败了多少人,太垃圾了”的大环境下
吧友@qpalz2 发主题贴《开机看时间 + 显示击败了多少人 的脚本》
实现了联网的功能,并把这个小项目放到了Github
并且为Archlinux制作了安装包,如感兴趣,自己去下载测试吧。
其实,我本想把这篇有趣的记录起名为《一个简单的脚本引发的血案》,我会乱说?
显示linux开机时间的脚本的更多相关文章
- Linux开机执行bash脚本
问题描述: Linux开机执行bash脚本 问题解决: (1)在 /etc/init.d文件夹中新建一个脚本myinit (2) ...
- linux awk时间计算脚本
在linux如果计划时间是个麻烦事, 用awk脚本如下 BEGIN {FS=":";OFS=":"} {total_seconds=total_seconds+ ...
- 如何修改linux开机运行配置脚本
开机运行级别的配置角本 /etc/inittab 开机运行级别 init 是切换运行级别的指令 0.关机 //init0 1.单用户模式(自动获取超级用户权限,无网络,无服 ...
- linux 开机自启脚本
1.vi /home/dpf/mqtt.sh #!/bin/sh/home/dpf/Desktop/Udp_Single_Async_Mqtt_yuan/hwjc_udp_receive_mqtt & ...
- Linux查看系统开机时间
有时候需要查看Linux系统运行了多久时间,此时需要知道上次开机启动时间: 有时候由于断电或供电故障突然停机,需要查看Linux开机时间/重启时间: 下面总结一些查看Linux开机关机时间的方法(非 ...
- 转载: Linux查看系统开机时间
转自: https://www.cnblogs.com/kerrycode/p/3759395.html 查看Linux系统运行了多久时间,此时需要知道上次开机启动时间: 有时候由于断电或供电故障突然 ...
- linux下添加自动启动项,linux 开机自动启动脚本方法
#service servicename status是当前状态#chkconfig --list servicename是查看启动状态,也就是是否开机自动启动 首先写好脚本,如 mysql,把它放到 ...
- Linux开机自启动脚本的总结
一.在/etc/rc.local中添加 如果不想将脚本粘来粘去,或创建链接什么的, 则: step1. 先修改好脚本,使其所有模块都能在任意目录启动时正常执行; step2. 再在/etc/rc.lo ...
- Linux开机自启应用&开机执行脚本&监听端口应用挂掉了执行启动脚本
linux开机自启 背景 目前要部署一个spring boot框架的jar包,实现开机启动项目或者应用挂掉了 执行启动脚本 在root目录下有一个启动项目的脚本: app_start.sh app_s ...
随机推荐
- “GDI+ 发生一般错误” 解决方法
System.Runtime.InteropServices.ExternalException: GDI+ 发生一般错误 对应的帐户没有写权限,给予帐户写权限 版权声明:本文博主原创文章,博客,未经 ...
- C++随机数的使用方法
学过别的高级语言的都知道,产生随机数用的都是相似于random这种字符,c++也不例外,在C++中使用的是rand()函数,可是不同的是,假设在C++中仅仅使用了比如 "int i ...
- vim cheat sheet
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzE1Mjg5NQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...
- OGG "Loading data from file to Replicat"table静态数据同步配置过程
OGG "Loading data from file to Replicat"table静态数据同步配置过程 一个.mgr过程 GGSCI (lei1) 3> view p ...
- Docker contanier comunication with route
2台宿主机,hslave1 192.168.1.153, hslave2 192.168.1.154 修改网段 docker0默认网段是172.17.0.0/16,修改154机器的docker0的网段 ...
- PKU 1509 Glass Beads (最小表示法)
题意:有一个环形字符串,让你找一个位置切一刀使得字符串字母序最小.输出这个位置. 思路:能够看成两个字符串比較.一个是从下标0開始(0~n-1),一个从下标1開始(1~n-1,0). 然后两个指针i= ...
- 使用Django清理数据库中的数据
数据库,数据清洗 问题叙述性说明:在系统我用在,因为历史和由于各种原因,原因记录的数据内的数据库表,有一个问题,有反复和不完整的数据 解:首先.由于数据量还是挺大的,工的清理肯定不行, 然后,我就想写 ...
- eclipse字母大写和小写转换的快捷键
大写转换小写 ctrl+shift+y 小写转换大写 ctrl+shift+x
- SQL Server 有关EXCEPT和INTERSECT使用
熟练使用SQL Server各种使用会带来多大的方便查询.今天介绍EXCEPT和INTERSECT.请注意,这只是语法SQL Server 2005和以上版本支持. EXCEPT它指的是存在于所述第一 ...
- [置顶] Spring中DI设置器注入
Java的反射机制可以说是在Spring中发挥的淋漓尽致,下面要看的代码就是通过反射机制来实现向一个类注入其实际依赖的类型,这个过程的实现会交由Spring容器来帮我们完成. JavaBean中针对属 ...