0
在python2.7二進制文件我用POPEN傳遞多個變量在python運行外部程序有問題:Linux上運行
#!/usr/bin/env python
import sys
import os
import shlex, subprocess
a = raw_input("Enter a number:")
b = raw_input("Enter a file:")
c = raw_input("Enter dir to search:")
subprocess.Popen(['/bin/sh', "./catnum.bin", "-m", a, "--remove", "-o results.txt", b, c])
謝謝!它工作現在=] – 0x0ins4n3m4yh3m
如果它的工作,你可以upvote,並在以後接受答案:) –
@Lucas:'subprocess.call()'只是'subprocess.Popen()。wait()'(你混合了'子進程''和'os'模塊 - 'Popen()'不被棄用)。真正的問題是a)無效/不必要的'/ bin/sh'調用b)''-o results.txt''應該寫成'「-o」,「results.txt」(2個參數),即正確的調用是:'subprocess.check_call([「./catnum.bin」,「-m」,a,「--remove」,「-o」,「results.txt」,b,c])'if' catnum.bin'是可執行的 – jfs