2012-01-27 12 views

答えて

0

zenityを使用できます。完全なリファレンスを参照してください

USERINPUT = $(--text "何かを入力してください" zenityを使う--entry --title "プラグインUSB")

:あなたのシェルスクリプトでhttp://library.gnome.org/users/zenity/stable/あり

kdialogと呼ばれるKDE-couterpartでもあります。

1

あなたが実行しているXセッションはudevには分かっていないので、udevには誰に送信するのか分からず、Xに複数のアクティブセッションを実行させることができます。また、Zenityタイプのスクリプトが動作するには、現在実行中のXセッションからX-Auth Cookieが必要です。これは現在、自宅から一時的な場所に変更され、その場所をハックするための修正スクリプトはありません。

必要な作業を行う方法はたくさんありますが、作業の量によって異なります。

notify-sendは情報を表示するだけで動作しないようにします。上記の提案と同様に、入力にはzenityまたはkdialogタイプが必要です。しかしもっと重要なのは、現在のセッションが必要なので、gnome-session-propertiesを使ってスクリプトをフックすることです。そうすれば、ログインするたびにフッキングが実行されます。

これは次に、あなたがあなたのUSBデバイス

#!/bin/sh 

echo "password" > /tmp/usb_notify 
REPLY=`cat /tmp/usb_feedback` 
# then you can do whatever you need to with the feedback 
のためのudevのRUNでこれをフックすることができますのgnome-セッションpropotiesに

#!/bin/sh 

mkfifo /tmp/usb_notify 
mkfifo /tmp/usb_feedback 

while (true) do { 
    CALLBACK=`cat /tmp/usb_notify` 
    # check CALLBACK for some specific password :) if you needed 
    notify-send "USB plugged in something, input something for me!"; 
    USERINPUT=$(zenity --entry --title "USB plugged in" --text "Please enter something") 
    echo $USERINPUT > /tmp/usb_feedback 
} done; 

をフックするひとつの方法です

関連する問題