当在KDE4中使用Firefox的flash播放器"插件容器"时,我想自动禁用屏幕保护程序。最初的剧本不是我自己写的,但我稍微修改了一下。
#!/bin/sh
# Simple script to demonstrate D-Bus usage
while true
do
# read firefox plugin-container cpu usage
ret=$(top -b -n1 -u "$(whoami)" | gawk '$12 ~ /plugin-containe/ { SUM += $9 }; END { print SUM }')
if [ -n "$ret" ] && [ "$ret" -gt 15 ]; then
idle_time=`qdbus org.kde.screensaver /ScreenSaver GetSessionIdleTime`
if [ "$idle_time" -gt 50 ]; then
qdbus org.kde.screensaver /ScreenSaver SimulateUserActivity
fi
fi
sleep 50
done
现在,当我运行脚本时,我得到了这个错误:
/home/geo/bin/plugin-containe: line 7: [: 68.75: integer expression expected
我试图让top输出整数,但我做不到。
我能做些什么来修复?
问候Georges
如果awk
输出是非整数值的原因,则可以使用awk int()
函数将SUM
的值截断为整数值(即int(SUM)
)。