CRON作业和bash脚本,用于检查电池状态和蜂鸣音
我最近改变了桌面环境,新的没有电池显示器。 我通过以下操作创建了一个简单的手册:CRON作业和bash脚本,用于检查电池状态和蜂鸣音,bash,cron,alert,monitor,battery,Bash,Cron,Alert,Monitor,Battery,我最近改变了桌面环境,新的没有电池显示器。 我通过以下操作创建了一个简单的手册: alias bat='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|percentage"' 我想把它带到下一个级别,创建一个脚本,不仅检查电池电量,还根据它发出蜂鸣音,如果电池电量低于20%,它会发出蜂鸣音。 然后我想将其作为CRON作业运行,假设它每5分钟运行一次 我还使用以下方法创建了我喜欢的哔
alias bat='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|percentage"'
我想把它带到下一个级别,创建一个脚本,不仅检查电池电量,还根据它发出蜂鸣音,如果电池电量低于20%,它会发出蜂鸣音。
然后我想将其作为CRON作业运行,假设它每5分钟运行一次
我还使用以下方法创建了我喜欢的哔哔声:
alias beep='paplay /usr/share/sounds/ubuntu/stereo/message-new-instant.ogg'
假设涵盖了CRON部分,假设使用与“bat”中相同的命令,您将如何在bash中编写此脚本:
upower -i /org/freedesktop/UPower/devices/battery_BAT0
谢谢我想出了以下解决方案: 1) 创建bash脚本:
#!/bin/bash
bat='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|percentage"'
beep='paplay /usr/share/sounds/ubuntu/stereo/message-new-instant.ogg'
# This gets the integer percentage of current battery capacity
p=$(eval $bat | grep 'percentage' | awk '{print $2}' | awk -F '.' '{print $1}')
# if bat < 25% -> BEEP once
if [ "$p" -le 25 ] ; then
eval $beep
fi
3) 要设置cron作业,请运行crontab-e
并添加以下行:
*/1 * * * * /path/to/script.sh
这意味着脚本将每分钟运行一次。我想出了以下解决方案: 1) 创建bash脚本:
#!/bin/bash
bat='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|percentage"'
beep='paplay /usr/share/sounds/ubuntu/stereo/message-new-instant.ogg'
# This gets the integer percentage of current battery capacity
p=$(eval $bat | grep 'percentage' | awk '{print $2}' | awk -F '.' '{print $1}')
# if bat < 25% -> BEEP once
if [ "$p" -le 25 ] ; then
eval $beep
fi
3) 要设置cron作业,请运行crontab-e
并添加以下行:
*/1 * * * * /path/to/script.sh
这意味着脚本将每分钟运行。虽然
*/1
有效,但如果作业应每分钟运行,则可以将其替换为*
。虽然*/1
有效,但如果作业应每分钟运行,则可以将其替换为*
。