我一直在寻找一个选项或脚本,可以在终端空闲后(没有输入也没有输出)执行命令。
我发现最接近的方法是设置TMOUT=seconds
变量,以便终端自动关闭。这可以直接完成,也可以将以下行添加到$HOME/.profile
我想要做的是,我的桌面上的 gnome 终端在 5 分钟未使用后自行重置或清除。
答案1
您可以在 cron 作业中使用 的输出w
。请参阅行IDLE
。这是自 shell 中最后一次击键以来的时间:
user@host:~# w
20:29:12 up 4:04, 1 user, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 1.2.3.4 18:24 0.00s 0.23s 0.00s w
user@host:~# sleep 10 && w
20:29:26 up 4:04, 1 user, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 1.2.3.4 18:24 10.00s 0.23s 0.00s w
因此,编写一个 cron 作业来读取此行,当数字超过 300(5 分钟)时执行您的命令。