我正在创建一个Python脚本,该脚本调用Shell脚本并使用Subprocess
在终端上运行该Shell脚本。我的问题是我想由另一个用户运行该Shell脚本。我的代码如下
代码:
import subprocess
filename = '/mount/test.sh'
p = subprocess.Popen([filename],shell=True,stdout=subprocess.PIPE)
out, err = p.communicate()
print(out)
有人可以告诉我如何由另一个用户运行我的shell脚本吗?
注意:
只有子进程部分应该由其他用户运行,而不是主python脚本
答案 0 :(得分:1)
您可以尝试以下解决方案
import re
s = '-'
regex = re.compile('[!@#$%^&*()+-]')
if regex.search(s) == None:
print("Not found")
else:
print("Found")
注意:我使用了check_output而不是Popen。由于无法测试,请输入错别字或错误。另外,请检查p.communicate是否可以使用check_output。