Usb 如何从udev启动virtualenv内部的python脚本

Usb 如何从udev启动virtualenv内部的python脚本,usb,python-venv,udev,Usb,Python Venv,Udev,我有一个python脚本/home//code/test.py,它依赖于仅安装在我的venv中的模块。我需要在插入usb设备时从udev启动此脚本 这是我在/etc/udev/rules.d/50-myusb.rulesSUBSYSTEM==“usb”,ATTR{idVendor}==“xxxx”,ATTR{idProduct}==“yyyy”,ACTION==“add”,RUN+=”/usr/bin/sudo-u--bash-c'cd/home//code/;source./venv/bin/

我有一个python脚本/home//code/test.py,它依赖于仅安装在我的venv中的模块。我需要在插入usb设备时从udev启动此脚本

这是我在/etc/udev/rules.d/50-myusb.rules
SUBSYSTEM==“usb”,ATTR{idVendor}==“xxxx”,ATTR{idProduct}==“yyyy”,ACTION==“add”,RUN+=”/usr/bin/sudo-u--bash-c'cd/home//code/;source./venv/bin/activate;python3 test.py'

但是,当我插入usb设备时,python脚本test.py不会执行
如果我改为在终端中以root用户身份运行该命令,它就可以正常工作。 如果我删除test.py中的模块依赖项并删除source./venv/bin/activate;test.py脚本在我插入usb设备时执行。 所以我猜是venv的激活失败了。我怎样才能解决这个问题