![](/img/trans.png)
[英]How do I pass a regex to pdfgrep using the python subprocess module?
[英]How do I pass variable when using Python subprocess module
我正在尝试使用python Subprocess模块从python代码启用/禁用以太网连接。 下面是我的代码,其中第一步正在寻找可用的“以太网连接”,而下一步则根据“%interfaces%”中传递的参数启用/禁用了以太网连接。
for /f "skip=2 tokens=3*" %%A in ('netsh interface show interface') do set interface=%%B
netsh interface set interface %interface% ENABLED
现在,在python中使用时,我无法传递变量,但不确定是否可以传递。 仅传递以下命令可以按预期工作:
import subprocess
subprocess.call('netsh interface set interface Ethernet10 ENABLED')
我想做类似的事情:
import subprocess
subprocess.call (set x = 'Ethernet0')
subprocess.call('netsh interface set interface x ENABLED')
subprocess.call将列表作为参数:
subprocess.call(['netsh', 'interface', 'set', 'interface', x, 'ENABLED'])
您可以改为传递shell=True
并且您的字符串可以使用,但这存在安全风险,因为用户可以使用$(command_here)
调用另一个命令。
如果仍然要使用字符串,则可以使用shlex.split
。
使用字符串格式,内插或串联:
x = 'Ethernet10'
subprocess.call('netsh interface set interface ' + x + ' ENABLED')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.