linux限制程序的使用时间
系统:ubuntu 20.04
bash版本:5.0.17(1)-release (x86_64-pc-linux-gnu)
当一个系统里面有多个用户时,有的用户可能会一直开着某一个程序,但是又没有使用(比如说dve),如果这些程序占用内存过多,就可能会影响到其他用户。这个时候就需要对这个程序的使用时间进行限制,以防止用户忘记关闭该程序。过程中主要的timeout命令,也使用到了echo命令,echo主要用来提醒用户该程序有使用时间限制,以下内容添加到/etc/profile中(这样可以对每个用户生效)
alias dve="echo -e '\033[1;5;31m \n 程序限制运行1天 \n \033[0m' && timeout -s SIGKILL 1d dve "
上面的 -s SIGKILL 就是当1天过后,使用kill -SIGKILL 来强制杀死dve;1d表示1天,1s就是一秒,将1d 改为 1s 的结果如下图,由于是图片,实际红色的字是在闪烁的
# function ./simv(), $1:first parameter
./simv(){
if [ "$1" = "-gui" ]
echo -e '\033[1;5;31m \n 程序限制运行1天 \n \033[0m'
then
timeout -s SIGKILL 1d ./simv -gui
else
timeout -s SIGKILL 1d ./simv
fi
}
如果在这个过程中遇到了其它问题,欢迎在评论区留言,或者Google一下,也欢迎把具体的解决方法留在评论区,以供后来者参考
参考