Терминальная команда для проверки / снятия отметки «Затемнение экрана для экономии энергии»?

8

У меня проблемы с тем, чтобы на моем ноутбуке с Ubuntu 14.04 не светился экран, когда он работает от батареи. Я перепробовал все, что есть в Интернете, чтобы предотвратить это, но тщетно. Большинство людей решили свою проблему, сняв флажок рядом с «Тусклый экран для экономии энергии» в настройках «Яркость и блокировка». Я тоже это попробовал.

Так есть ли способ сделать это из терминала?

user2574723
источник

Ответы:

10

Вы можете получить его статус, используя gsettingsкоманду следующим образом:

gsettings get org.gnome.settings-daemon.plugins.power idle-dim

Это вернет «истина» или «ложь». Поэтому, если вы хотите изменить его значение, используйте setпараметр вместо getи введите «true», чтобы включить его, или «false», чтобы отключить:

gsettings set org.gnome.settings-daemon.plugins.power idle-dim true

Теперь, если вы не хотите затемнять экран, когда вы работаете от батареи, вам нужны сценарии, потому что этот параметр не обнаруживает и не отслеживает состояние, если вы работаете от сети или от батареи.

Это можно сделать с помощью on_ac_powerкоманды в цикле while для проверки, работает ли система от сети переменного тока, следующим образом:

#!/bin/bash
while true
do
    if on_ac_power; then
        gsettings set org.gnome.settings-daemon.plugins.power idle-dim true
    else
        gsettings set org.gnome.settings-daemon.plugins.power idle-dim false
    fi
    sleep 60   # check the state in each 60 seconds
done

Сохраните script.ex: dimscreen.shи запустите его, набрав sh /path/to/dimscreen.shв Терминале.


Также вы можете сделать это как cronработу в вашем crontabфайле.

#!/bin/bash
if on_ac_power; then
    gsettings set org.gnome.settings-daemon.plugins.power idle-dim true
else
    gsettings set org.gnome.settings-daemon.plugins.power idle-dim false
fi
  1. Сохранение скрипта (пример dimscreen.sh)
  2. Сделайте это исполняемым chmod +x /path/to/dimscreen.sh
  3. открыть crontabфайл с помощью VISUAL=gedit crontab -eилиEDITOR=gedit crontab -e

  4. Теперь скопируйте и вставьте его * * * * * /path/to/dimscreen.shв конец и сохраните файл. Это будет запускать вашу команду / скрипт каждую минуту

    .---------------- minute (0 - 59)
    |  .------------- hour (0 - 23)
    |  |  .---------- day of month (1 - 31)
    |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
    |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
    |  |  |  |  |
    *  *  *  *  * command to be executed
αғsнιη
источник
Вместо того, чтобы давать руководство по редактированию vim, сделайте: VISUAL=gedit crontab -eили EDITOR=gedit crontab -e.
Муру
Это очень надуманный обходной путь. Марк прибил проблему в другом ответе на известную ошибку в 14.04. Давайте исправим ошибки вместо того, чтобы связываться с системой.
Йохан Буле
3

@Kasiya По какой-то причине снятие галочки не работает даже в терминале. Спасибо за еще один сложный ответ. К сожалению, я новичок. Так что я не буду биться головой, чтобы понять ваш метод. Но я думаю, что нашел обходной путь. Проблема, с которой я столкнулся, заключалась в том, что экран приглушался до определенной яркости при питании от батареи и в режиме ожидания. Если вы делаете это в терминале:

gsettings get org.gnome.settings-daemon.plugins.power idle-brightness

Вы получаете яркость холостого хода. Таким образом, я установил это равным моей фактической яркости экрана. с помощью:

gsettings set org.gnome.settings-daemon.plugins.power idle-brightness 70

Задача решена.

user2574723
источник
В 14.04 имеется ошибка, из-за которой значение «idle-dim» игнорируется. Следовательно, делая ответ KasiyA неадекватным (и действительно слишком сложным). Ваше решение может быть немного улучшено: я заметил, что если настройка «холостой яркости» выше, чем яркость в тот момент, когда экран тускнеет, он просто не тускнеет. Поэтому обходной путь для отключения затемнения состоит в том, чтобы установить «яркость холостого хода» на 100, что не приведет к тому, что экран станет ярче (или темнее), независимо от того, какой у вас фактический уровень яркости.
Марк