当我在终端上写字时:
./sherlock *.txt
它有效
但是当我尝试使用像
这样的python子进程时也这样做import subprocess
subprocess.call(['./sherlock','*.txt'])
import subprocess
subprocess.call('./sherlock','*.txt',shell=True)
import subprocess
subprocess.call('./sherlock','*.txt',shell=False)
这两项都没有用,请帮助。
答案 0 :(得分:6)
Shell展开*
,subprocess.call
没有。使用*
展开glob.glob
。
除此之外,代表要发布的命令的参数应该是列表或字符串对象(不是多个参数)。
import glob
import subprocess
subprocess.call(['./sherlock'] + glob.glob('*.txt'), shell=False)