我的 iPhone 通过 Dock 通过 USB 连接到我的 Ubuntu 桌面。如何配置它,以便在我对接手机时屏幕解锁,而在取出手机时将其锁定?
在这里找到了Evan Boldt 提供的关于如何执行此操作的优秀脚本。谢谢埃文!
首先使用lsusb找出您的设备的 id
在你的主目录下创建一个脚本(让我们在这个例子中使用/home/me/iPhoneLock.sh),看起来像这样:
#!/bin/bash
#Replace with the ID of your USB device
id="ID ffff:1234 Apple, Inc. iPhone 3G"
serial="12345"
#runs every 2 seconds
for ((i=0; i<=30; i++))
do
if [ -z "`lsusb -v 2> /dev/null | grep "$serial"`" ]
then
echo "Device is NOT plugged in"
if [ -n "`DISPLAY=:0 gnome-screensaver-command --query | grep "is active"`" ]
then
if [ -e /tmp/autoUnlock.lock ]
then
#stop locking the screen
rm /tmp/autoUnlock.lock
fi
elif [ -e /tmp/autoUnlock.lock ]
then
DISPLAY=:0 notify-send -t 5000 --icon=dialog-info "iPhone Disconnected" "Locking screen"
#lock the desktop
DISPLAY=:0 gnome-screensaver-command --lock
rm /tmp/autoUnlock.lock
fi
else
echo "iPhone IS plugged in"
if [ ! -e /tmp/autoUnlock.lock ]
then
DISPLAY=:0 gnome-screensaver-command --deactivate
DISPLAY=:0 notify-send -t 5000 --icon=dialog-info "iPhone Connected" "Welcome Back!"
touch /tmp/autoUnlock.lock
fi
fi
sleep 2
done
Run Code Online (Sandbox Code Playgroud)
接下来,编辑您的 crontab:
crontab -e
Run Code Online (Sandbox Code Playgroud)
最后配置它,使其每分钟运行一次:
* * * * * bash /home/username/bin/autoUnlock & >/dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)
但请注意:当然,这意味着任何拥有您手机的人都可以解锁您的屏幕。一个不错的改进是只有在您的手机已解锁时才解锁您的屏幕。
这当然适用于任何 USB 设备。
该脚本在CC-GNU GPL 2.0 版或更高版本下获得许可。
归档时间: |
|
查看次数: |
3081 次 |
最近记录: |