web-dev-qa-db-ja.com

Zenityでシャットダウンを確認しますか?

このコマンド を得たので、キーボードから直接Ubuntu 13.10をシャットダウンできます(ターミナルを開いてSudo shutdown -h nowなどを実行する必要はありません):

dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop

このコマンドをショートカットにバインドしました: CtrlAlt` そしてそれは動作します。

ただし、応答としてyと入力すると、上記のシャットダウンコマンドを実行するZenityウィンドウを取得できるかどうかを知りたいです。 nを押すと、Zenityウィンドウが閉じてセッションを続行できます。

4
DK Bose

次のスクリプトを使用できます。

#!/bin/bash

zenity --question --text="Are you sure, proceed to shutdown?"
if [ $? = 0 ]; then
    dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop

else
    exit
fi

使用法

スクリプトをshutdown.shとして保存します。実行許可を与える、

chmod +x shutdown.sh

使用をシャットダウンするには、

./shutdown.sh

zenityから次の通知を受け取ります

enter image description here

キーボードショートカット

システム設定>>キーボード>>ショートカット>>カスタムショートカットからスクリプトのカスタムキーボードショートカットを設定できますフィールドcommand useで、

/path/to/shutdown.sh  

端末から

自宅にフォルダーbinを作成します。 PATHにあるかどうかを確認し、

echo $PATH

パスに表示されない場合は、パスで使用できるようにします。これには、端末で次のコマンドを使用できます。

cd
mkdir bin
echo -e "\nexport PATH=\$HOME/bin:\$PATH" | tee -a ~/.bashrc
. ~/.bashrc

shutdown.shbinフォルダーに入れます。その後、端末から実行可能ファイルにアクセスできるようになります。

shutdown.sh
7
souravc