回避するには、バグ#1005495(不可能ホットキーを経由してLCDの明るさを変える)、私は私のLCDの明るさを減少させるための1つのコマンドラインを高めるためのクエリと1を持っているしたいと思います。次に、このクエリのそれぞれにホットキーをマップできます。
問題は、コマンドラインでLCDの輝度を増減する方法がわからないことです。あなたは?
回避するには、バグ#1005495(不可能ホットキーを経由してLCDの明るさを変える)、私は私のLCDの明るさを減少させるための1つのコマンドラインを高めるためのクエリと1を持っているしたいと思います。次に、このクエリのそれぞれにホットキーをマップできます。
問題は、コマンドラインでLCDの輝度を増減する方法がわからないことです。あなたは?
回答:
これを行う必要があるもう1つの方法は、xbacklightという名前の別の新しいプログラムを使用して、ターミナルを開いてこれを入力することです
sudo apt-get install xbacklight
次にこれを入力 xbacklight -set 50 
明るさの範囲を表す50があり、0から最大100まで取得できます。
現在の明るさから指定されたレベルまで明るさを増減することもできます。既に述べたように、現在の明るさの値から10%に増やしたい場合は、
xbacklight -inc 10
10%減らすためにこれを与えることができます
xbacklight -dec 10 
警告:xbacklightIntelでのみ動作し、Radeonでは正しく動作せず、モード設定ドライバ(source)では動作しません。
xbacklight +10;  xbacklight -10;  xbacklight =50;
                    ターミナルを開いてこれを入力してください
xrandr -q | grep " connected"
次のように出力されます
LVDS1 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 331mm x 207mm
ディスプレイ用のLVDS1スタンドがあります。だから今、あなたは
xrandr --output LVDS1 --brightness 0.5
0.5は輝度レベルを表し、範囲は0.0〜1.0です。0.0->フルブラック.so必要な明るさの値を選択する必要があります。
これはハードウェアレベルで明るさを変えません。randrマニュアルから:
--brightness brightness乗算ガンマ現在指定されているフローティング値に出力するように取り付けられたCRTCに値。明るすぎる、または薄暗い出力に役立ちます。ただし、これはソフトウェアのみの変更であり、ハードウェアが実際に輝度を変更するサポートを持っている場合は、おそらくxbacklightを使用することをお勧めします。
次は私のために働く:
echo 400 | sudo tee /sys/class/backlight/intel_backlight/brightness
可能な最大値は/sys/class/backlight/intel_backlight/max_brightnessファイルにあると思います。
intel_backlightすべてのバックライトに適用するには、アスタリスクに置き換えます。
echo 400 | sudo tee /sys/class/backlight/intel_backlight/brightness。
                    sudo echo 400 > /sys/class . .. ./brightnessリダイレクトを行うときの@Ray は、エコーではなくシェルによって行われます。また、シェルはsudoではなく通常のユーザーとして実行されます。それが許可を拒否する理由です。ルート権限でファイルに書き込むユーティリティが必要teeです。これが機能する理由です。
                    echo 400 | sudo tee /sys/class/backlight/radeon_bl0/brightnessラディオンAPUとカードの場合
                    sudo chmod 0646なりbrightnessますので、sudo明るさを設定する必要はありません。
                    ラップトップの場合、
sudo setpci -s 00:02.0 F4.B=80
を変更80し[0-FF]て、最低から最高の明るさを取得します。指定された値は16進数であるため、最大の明るさ80が得られます50%。
デスクトップでガンマ補正を行うには(私はテストしていません)、
xgamma -gamma .75
setpciしませんでしたが機能xgammaしました。
                    キーボード制御の明るさのステップは、この方法でも実装できます。
# Step up:
gdbus call --session --dest org.gnome.SettingsDaemon.Power --object-path /org/gnome/SettingsDaemon/Power --method org.gnome.SettingsDaemon.Power.Screen.StepUp
# Step down:
gdbus call --session --dest org.gnome.SettingsDaemon.Power --object-path /org/gnome/SettingsDaemon/Power --method org.gnome.SettingsDaemon.Power.Screen.StepDown
/sys/class/backlight方法とは異なり。xbacklight 常に機能するとは限りません。xrandrガンマ補正をするだけxrandrガンマおよび輝度スクリプトで既に制御されている外部モニターには影響しません。
                    このスクリプトを作成します。
set-brightness.sh
#!/bin/bash
TARGET="acpi_video0"
cd /sys/class/backlight
MAX="$(cat "${TARGET}/max_brightness")"
# The `/1` at the end forced bc to cast the result 
# to an integer, even if $1 is a float (which it 
# should be)
LOGIC="$(echo "($1 * ${MAX})/1" | bc)"
for i in */; do
    if [[ "${TARGET}/" != "$i" && -e "${i}brightness" ]]; then
        cat "${i}max_brightness" > "${i}brightness"
    fi
done
echo "$LOGIC" > "${TARGET}/brightness"
0から1までの任意の値で、rootとして実行します。
sudo ./set-brightness.sh 0.5
/sys/class/backlight/acpi_video0デバイス固有のディレクトリが少なくとも1つ存在する必要があります(radeon_bl0たとえば、もあります)。  acpi_video0 なければならない、常に動作し、それは常に使用可能な物理明るさの完全な範囲を持っていません。それぞれを試して、最大の色域を持つものを「ターゲット」として使用してください/sys/class/backlight/*/brightnessにハードコーディングacpi_video0する代わりに、使用することを検討してください。ファイルへのパスを一般化することができますが、これは異なる場合がintel_backlightありacpi_video0ます。それは私が私の中で使用されてきたものだ、ここでスクリプト
                    @palacsintが言ったように、echo 244 > /sys/class/backlight/intel_backlight/brightnessパスは私のために動作します。
ただし、最大値と最小値はそれぞれ/sys/class/backlight/intel_backlight/max_brightnessと/sys/class/backlight/intel_backlight/bl_powerファイルに再送されます。
また、コンピューターが現在実行している実際の明るさは /sys/class/backlight/intel_backlight/actual_brightness
qdbus org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl setBrightness 55
上記のコードはまだ有効です。KDEユーザーの場合にのみ機能します。ただし、その場合、追加のソフトウェアは必要ありません。「バッテリーと輝度」ウィジェットを使用する場合とまったく同じ動作になります。私の知る限り、物理的なバックライトは変化しますが、そうxrandrではありません。
上記の55は100の端数ではないことに注意してください。後者は最大の明るさです。代わりに、max_brightnessに関連しています。
qdbus org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl brightnessMax
また、スクリプトで好む「サイレント」バージョンもあります。
qdbus org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl setBrightnessSilent 2000
参照:qdbus、solid、brightness
目をリラックスさせるのに役立つ短いラインを以下に示します。その行でcrontaabを作成するか、スクリプトを作成するだけです
xrandr --output VGA1 --brightness 0.5; sleep 20; xrandr --output VGA1 --brightness 1
上記の回答を使用して、ディスプレイの明るさを変更するためにこのスクリプトを作成しました(ホームディレクトリにbrightness.shとして保存)(ラップトップのキーボードがこぼれたお茶の問題を受けて使用できなくなったため)。それを自由に使用してください(指定されたファイルがある場合...そうでなければ、それらのバリエーションを指すように調整する必要があります)。
#!/bin/bash
function main_menu
{
    sudo clear
    cursetting=$(cat /sys/class/backlight/intel_backlight/brightness)
    maxsetting=$(cat /sys/class/backlight/intel_backlight/max_brightness)
    powersave=$((maxsetting/5))
    conservative=$((powersave*2))
    medium=$((powersave*3))
    performance=$((powersave*4))
    echo ""
    echo "----------------------- Brightness -----------------------"
    echo " 1. Set Display to Minimum (Powersave) brightness setting."
    echo " 2. Set Display to Low (Conservative) brightness setting."
    echo " 3. Set Display to Medium brightness setting."
    echo " 4. Set Display to High (Performance) brightness setting."
    echo " 5. Set Display to Maximum brightness setting."
    echo " 6. Exit."
    echo "----------------------------------------------------------"
    if [ $cursetting -eq $powersave ]; then
     cursetting='Minimum'
    else
     if [ $cursetting -eq $conservative ]; then
      cursetting='Conservative'
     else
      if [ $cursetting -eq $medium ]; then
       cursetting='Medium'
      else
       if [ $cursetting -eq $performance ]; then
        cursetting='Performance'
       else
        if [ $cursetting -eq $maxsetting ]; then
         cursetting='Maximum'
        fi
       fi
      fi
     fi
    fi
    echo "        Current Display Setting - "$cursetting;
    choice=7
    echo ""
    echo -e "Please enter your choice: \c"
}
function press_enter
{
    echo ""
    echo -n "Press Enter to continue."
    read
    main_menu
}
main_menu
while [ $choice -eq 7 ]; do
read choice
if [ $choice -eq 1 ]; then
 echo $powersave | sudo tee /sys/class/backlight/intel_backlight/brightness
 main_menu
else
 if [ $choice -eq 2 ]; then
  echo $conservative | sudo tee /sys/class/backlight/intel_backlight/brightness
  main_menu
 else
  if [ $choice -eq 3 ]; then
   echo $medium | sudo tee /sys/class/backlight/intel_backlight/brightness
   main_menu
  else
   if [ $choice -eq 4 ]; then
    echo $performance | sudo tee /sys/class/backlight/intel_backlight/brightness
    main_menu
   else
    if [ $choice -eq 5 ]; then
     echo $maxsetting | sudo tee /sys/class/backlight/intel_backlight/brightness
     main_menu
    else
     if [ $choice -eq 6 ]; then
      exit;
     else
      echo -e "Please enter the NUMBER of your choice: \c"
      choice = 7
     fi
    fi
   fi
  fi
 fi
fi
done
elifまたはより良いをcase。また、google.github.io / styleguide / shell.xmlのようなスタイルガイドを読んで、シェルチェックのようなリンターを試してみることをお勧めします。私が何年も前にスクリプトを書き始めたときに、誰かがこれを教えてくれたらと思います。:)
                    ddccontrolは、外部モニターのバックライトを制御する別のオプションです。ここで、外部モニターのバックライトをその電力の50%に設定できます。
ddccontrol -p -r 0x10 -w 50
この問題の可能な解決策を探して、Redshiftが輝度の変化を処理する方法を改善しました。そこから、Linuxカーネル用のパッチセットがあり、デバイス間の互換性を改善し、ラップトップと外部画面が同様に機能することがわかりましたsysfs。
それまでの間、ddccontrolはここで私のために機能する唯一のものです。いつものように、Arch wiki にはトピックに関する総合的なドキュメントもあります。
使用するインタラクティブなncursesのようなUI xbacklight
貧しい男のncurses。ヒットするhと10%減少し、ヒットするlと10%増加します。次に、現在の輝度を表示します。
xback() (
  done=false;
  echo "less: h, more: l, quit: q"
  while ! $done; do
    read -rsn1 key
    if [ "$key" = h ]; then
      xbacklight -dec 10
    elif [ "$key" = l ]; then
      xbacklight -inc 10
    elif [ "$key" = q ]; then
      done=true
    fi
    printf "\r$(xbacklight -get) "
  done
)
絶対輝度を設定するには(ラップトップユーザーの場合):
BRIGHTNESS=50 # 0 to 100
dbus-send \
--session \
--type=method_call \
--dest="org.gnome.SettingsDaemon.Power" \
/org/gnome/SettingsDaemon/Power \
org.freedesktop.DBus.Properties.Set \
string:"org.gnome.SettingsDaemon.Power.Screen" \
string:"Brightness" \
variant:int32:$BRIGHTNESS