Linux中的用户空闲时间
我需要检查自上次用户输入发生以来经过了多少时间(最好是用Python在Linux上实现,版本是lucid - 10.4)。
我知道用正常的方法很简单(只需要使用XScreenSaverQueryInfo),但问题是我没有x11/extensions/scrnsaver.h这个头文件,而且我必须用其他方法来实现(即使我安装了所需的包,我也不能在另外100台电脑上安装包,因为我没有权限这么做)。
4 个回答
1
在网上我发现了类似的东西,看起来可以用,但还不是完美的解决方案,因为它返回的信息比我需要的多得多,而且旁边的数字也不是固定的(在其他系统上会有所不同):
ls -l /dev/pts | fgrep username
3
使用 xprintidle
需要安装的东西:
sudo apt-get install xprintidle
在命令行中使用:
xprintidle
或者,以秒为单位:
echo $((`xprintidle` / 1000))
或者在 Python 中使用:
milliseconds_string = os.popen("xprintidle").read()
seconds = int(milliseconds_string)/1000
4
另一个基于X屏幕保护程序的选择是来自suckless-tools的xssstate:
xssstate -i