다음과 같은 명령이 있습니다.
if [ $battery_level -le 6 -a $STATUS = $NOT_CHARGING ] #Battery Low 1
then
/usr/bin/notify-send -i "$ICONL" "Battery critically low!" "Battery level is ${battery_level}%!"
paplay /usr/share/sounds/freedesktop/stereo/dialog-information.oga
배터리가 일정 수준에 도달하면 메시지를 내보내고 소리를 냅니다. 하지만 너무 자주 반복됩니다.
같은 명령을 비슷한 줄로 구분해서 절전 모드로 전환했다가 다시 실행할 수는 있는데 sleep 120s
몇 번이나 실행해야 할지 모르겠습니다.
2분 간격으로 무기한 실행해야 합니다(어느 시점에서 시스템 절전 또는 최대 절전 모드가 완전히 다른 스크립트에 의해 트리거되기 때문입니다).
이봐:X초마다 Linux 명령을 영원히 실행하거나 반복하는 방법, 한 가지 옵션은 sleep
이고 다른 하나는 입니다 watch
.
watch
작동하는 것 같지만 양식에서만 작동합니다.
watch -n 120 <my_line>
, 출력이 약간 변경됩니다(배터리 잔량이 더 이상 표시되지 않음).
답변1
루프 를 사용하세요 while
.
while [ "$battery_level" -le 6 ] && [ "$STATUS" = "$NOT_CHARGING" ]