Gnome3 - 명령줄에서 화면 에너지 설정 지정(스크립트)

Gnome3 - 명령줄에서 화면 에너지 설정 지정(스크립트)

명령줄에서 gnome 시스템 설정에 액세스하고 설정할 수 있는 방법이 있습니까?

나는 특히 그것을 설정하는 한 가지 방법에 관심이 있습니다.

settings -> energy -> screen off = never
settings -> energy -> screen off = (N) minue(s)

bash 스크립트에서 이 설정에 액세스하여 never스크립트가 시작될 때 화면을 끄고 (N) minue(s)스크립트가 종료되기 전으로 돌아가도록 설정할 수 있습니다.

방금 독일어 GUI의 메뉴 계층 구조를 번역했으므로 내 질문이 명확해지기를 바랍니다.

설정을 찾으려고 노력했지만 gsettings실제로 완료할 수 없었습니다.

답변1

좋아, 찾았습니다. 설정되어 있어서 꽤 좋습니다. seconds또한 1분보다 짧은 값을 설정할 수도 있습니다.

# Set "turn screen off" to (N)seconds:
  gsettings set org.gnome.desktop.session idle-delay N

# Set "turn screen off" to never:
  gsettings set org.gnome.desktop.session idle-delay 0

# Set "turn screen off" to 1 minute (60)seconds:
  gsettings set org.gnome.desktop.session idle-delay 60

스크립트에서는 다음과 같이 사용합니다.

# getting the time of current setting and store to variable 'screenoff'
  screenoff=$(gsettings get org.gnome.desktop.session idle-delay \
               | awk '{print $2}')

# set "turn screen off" to never
  gsettings set org.gnome.desktop.session idle-delay 0

  echo "lots of important information being printed..."

# set back to the former setting:
  gsettings set org.gnome.desktop.session idle-delay "$screenoff"

$screenoff스크립트가 완료되기 전에 취소되면 그 안에 저장된 값은 당연히 손실됩니다.


해결책아마도 값을 스크립트 끝에 temporary file있는 에 저장할 것입니다.removed

#!/bin/bash

# check if there is a temporary file from an aborted session
# read from this file or get value from gsettings & write temporay file:

  if [ -f "./.screenoff.tmp" ]; then
      screenoff=$(cat "./.screenoff.tmp")
  else
      screenoff=$(gsettings get org.gnome.desktop.session idle-delay \
                   | awk '{print $2}')
      echo "$screenoff" > "./.screenoff.tmp"
  fi

# switch power saving off:
  gsettings set org.gnome.desktop.session idle-delay 0

  echo "lots of important information being printed..."

# Set "turn screen off" back to original value:
  gsettings set org.gnome.desktop.session idle-delay "$screenoff"

# remove temporary file
  rm "./.screenoff.tmp"

관련 정보