Ubuntu日本語フォーラム
ログインしていません。
初めて投稿します。kazuhiroxと申します。よろしくお願いします。
システム設定の「電源」の「操作していない時にサスペンド」の設定をシェルスクリプトで
変更したいと考えています。
自分なりにネットで調べたのですが、pm-suspendのようなサスペンドを実行するコマンドは
見つかりましたが、この設定を変更する方法が分かりませんでした。
どなたか御存知の方がいらっしゃいましたら、教えて頂けないでしょうか?
私のUbuntuのバージョンは以下の通りです。
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.10
DISTRIB_CODENAME=oneiric
DISTRIB_DESCRIPTION="Ubuntu 11.10"
オフライン
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 秒数
です。
画面操作をコマンドに"翻訳"するには、調べる方法があるんですよ。(あまり皆さんブログとかに書かないですけど。)
ぜひご自身でやってみてください。
1. 空のファイル作成する。
$ touch hoge
2. 画面から設定を変更する。
3. どのファイルが書き換わったかを、findコマンドの-newerオプションで調べる
$ cd $ find . -newer hoge ./.config/dconf ./.config/dconf/user
4. findの出力を見ると、dconfの設定が書き換わっているのだろうと予想できる。
5. dconfの変更前の設定値をファイルに出力する。(ファイル:1.txt)
$ gsettings list-recursively > 1.txt
6. 画面から設定を変更する。
7. dconfの変更後の設定値をファイルに出力する。(ファイル:2.txt)
$ gsettings list-recursively > 2.txt
8. 2つのファイルをdiffコマンドで比較する。
$ diff -u 1.txt 2.txt --- 1.txt 2011-12-02 02:20:39.688603189 +0900 +++ 2.txt 2011-12-02 02:20:48.560603445 +0900 @@ -773,7 +773,7 @@ org.gnome.settings-daemon.plugins.power sleep-display-ac 600 org.gnome.settings-daemon.plugins.power sleep-display-battery 600 org.gnome.settings-daemon.plugins.power sleep-inactive-ac true -org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 600 +org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 300 org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'suspend' org.gnome.settings-daemon.plugins.power sleep-inactive-battery true org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 0
9. 以上のことから、画面から設定を変更すると、dconfの「org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout」 が書き換わっている事が明らかになる。
10. なお、4.にてdconfではなくgconfが書き換わっているだろうと予想した場合は、5.と6.では「gsettings list-recursively」の代わりに「gconftool --dump / 」を使えばよいです。
逆に、dconfでもgconfでも無い場合は、単なるテキストファイルの場合が殆どなので、もっと簡単です。
また、設定がシステム設定の場合は、3. にてホームディレクトリ配下の代わりに、/etc配下とかをfindするとよいです。
他には、変更点をモニタリングする機構などが最初から組み込まれているソフトウェアもありますし、ファイル変更を監視するツール(inotifyとか)もありますが、上記の方法で私は、大抵のケースで画面操作をコマンドに"翻訳"できています。
ベタな方法ですが応用範囲が広いので、私は強力だと思っています。
STGSAGWANさん、回答ありがとうございました。
おぉ!操作コマンドの翻訳の仕方は、大変参考になりました!
これはUbuntuだけでなく、Linux全般にも応用できますね!
本当にありがとうございました。
オフライン