xrandr --verbose
現在の明るさを取得するために使用されるモニターの明るさを調整するbashスクリプトがあります。ここに示すようにうまく動作しますが、xrandr
私のコンピュータで使用するのは少し遅いです。
[PROMPT REDACTED]$ time xrandr --verbose
# xrandr output omitted for brevity
real 0m0.976s
user 0m0.003s
sys 0m0.002s
ほぼ1秒かかることに加えて、不要な多くの情報が出力されます。実際に必要な出力行は次のとおりですBrightness: X
。現在、この行を使用して次の値を取得します。
BRIGHTNESS=`xrandr --verbose | grep -i brightness | cut -f2 -d ' ' | head -n1`
注:head
最後の呼び出しでは、モニターは2つなので、最終的に2つの値が得られますが、同じ明るさに保たれるため、1つだけが必要です。
で1行しか必要ないので、xrandr --verbose
次のように「ゆっくり」評価する方法があるかどうか疑問に思います。
xrandr
この行に達すると出力を停止します。xrandr
行の読み取りが終了すると、残りの出力は無視されます。- 他にはありませんか?
私はbashがこの状況に最も適した言語ではないかもしれないことを知っているので、他の言語のソリューションにも開いています。
ベストアンサー1
awk
以下を使用して、一部のパイプ(プロセス)を削除し、最初の明るさインスタンスが表示されるまでファイルを読み取ることができます。
xrandr --verbose | awk '/Brightness/ { print $2; exit }'