0
A
回答
0
你可以使用zenity。在你的shell脚本:
USERINPUT = $(zenity --entry --title “USB插上” --text “请输入内容”)
对于一个完整的参考见:http://library.gnome.org/users/zenity/stable/
有也是一个名为kdialog的KDE-couterpart。
1
由于您正在运行的X会话对于udev是未知的,因此udev不知道要发送给谁,并且X可能有多个活动会话正在运行。为了使Zenity类型的脚本正常工作,您还需要从当前正在运行的X会话中获取X-Auth Cookie。现在,这种情况已经从家庭变成了一个临时位置,您将不会有修复脚本来解决这个问题。
有很多方法可以做你需要的东西,但它取决于你想做多少工作。
通知 - 发送只显示信息,所以它不会工作。像上面的建议一样,你需要输入zenity或者kdialog类型。但更重要的是,您需要当前会话,因此您可能需要使用gnome-session-properties挂接脚本。这样,每次登录时都会运行您的挂钩。
这只是一个勾到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;
方式然后你可以在运行的udev这个勾你的USB设备
#!/bin/sh
echo "password" > /tmp/usb_notify
REPLY=`cat /tmp/usb_feedback`
# then you can do whatever you need to with the feedback
相关问题
- 1. Android:BroadcastReceiver插入/移除设备USB插入/从USB端口
- 2. Flex,获取已插入USB设备的USB ID
- 3. 处理输入设备插入/拔出时读取它
- 4. 当插入USB设备时,Android应用程序重新启动
- 5. 当用户点击输入键时获取用户输入jquery
- 6. 写入未插入的USB设备
- 7. 从用户处获取输入
- 8. 获取linux输入设备
- 9. Android设备在插入USB或未插入时表现不同
- 10. 如何识别何时将USB设备插入WinCE设备
- 11. 当在CLI中运行PHP时从用户处获得输入
- 12. WMIC.exe找不到插入的USB设备
- 13. 插入后批准USB设备
- 14. 从ASP.NET读取/写入客户端USB设备
- 15. 我如何接收USB设备输入
- 16. 使用node-usb从USB设备读取
- 17. Ubuntu Linux - 在插入USB设备时产生应用程序
- 18. 从MIDI设备实时获取输入(Python)
- 19. 用户模式从设备到主机的USB等时传输
- 20. 无法使用paramiko从其他设备获取USB输出
- 21. 写入USB HID设备
- 22. 使用IOKit获取USB设备的BSD名称以写入设备?
- 23. 如何使用Python中的输入框从用户处获取输入?
- 24. 如何通过插入USB设备找到USB主控制器
- 25. 从Sequel中获取插入ID准备
- 26. 使用PyUSB从USB设备读取/写入时出现问题(超时)
- 27. 如何知道Android设备何时插入USB端口?
- 28. 运行的东西时,USB设备插入不工作
- 29. 防止usbhid在USB HID设备插入时自动加载
- 30. 获取鼠标的设备ID /处理与原始输入