Python 使用subprocess.run 执行 su root , cd /remote/msg/cad/sos_library/virtuoso_lib, ls -l *.virtuosolib 三条命令的代码
时间: 2023-12-29 13:02:30 浏览: 101
代码应该如下:
```
import subprocess
cmd1 = ['su', 'root']
cmd2 = ['cd', '/remote/msg/cad/sos_library/virtuoso_lib']
cmd3 = ['ls', '-l', '*.virtuosolib']
subprocess.run(cmd1, check=True)
subprocess.run(cmd2, shell=True, check=True)
subprocess.run(cmd3, shell=True, check=True)
```
需要注意的是,第一条命令 su root 需要在 root 用户下执行。在运行代码前,你需要先切换到 root 用户或者输入 root 用户的密码。同时,第二条命令 cd 需要在 shell 中执行,因此需要使用 shell=True。最后一条命令 ls -l *.virtuosolib 则需要在当前目录下执行。
相关问题
subprocess.run 执行 su root , cd /remote/msg/cad/sos_library/virtuoso_lib, ls -l *.virtuosolib 三条命令,三天命令要合成一个集合执行
您可以使用以下代码将三条命令合成一个集合,并使用subprocess.run()执行它们:
```
import subprocess
cmd = "su root && cd /remote/msg/cad/sos_library/virtuoso_lib && ls -l *.virtuosolib"
subprocess.run(cmd, shell=True, check=True)
```
请注意,此代码需要运行在拥有root权限的系统上,否则命令可能无法成功执行。另外,由于此代码使用了shell=True参数,因此可以执行shell命令,但也将带来潜在的安全风险,请谨慎使用。
如何使用python中的subprocess.Popen运行/root/fwbot/autosend.py
你可以使用以下代码在Python中调用subprocess.Popen运行/root/fwbot/autosend.py:
import subprocess
proc = subprocess.Popen(['/usr/bin/python', '/root/fwbot/autosend.py'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
out, err = proc.communicate()
print(out.decode('utf-8')) # print输出stdout
print(err.decode('utf-8')) # print输出stderr
阅读全文