Python выполняет команду Class-dump - PullRequest
1 голос
/ 05 сентября 2011

Я пытаюсь выполнить следующий код на Python

import os,subprocess
from glob import glob

path = "/Users/armed/private_SDKs"
os.chdir(path)

for file in glob("*.framework"):
     command = ['class-dump' , '-H' , file , '-o' , '~', '/Users/armed/Desktop/Headers/']
     subprocess.call(command)

При выполнении этого скрипта я получаю следующую ошибку: -

Traceback (most recent call last):
  File "<pyshell#52>", line 3, in <module>
    subprocess.call(command)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 493, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 679, in __init__
    errread, errwrite)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1228, in _execute_child
    raise child_exception
OSError: [Errno 13] Permission denied

Любая помощь очень ценится!

1 Ответ

1 голос
/ 05 сентября 2011

Проверьте разрешения команды class-dump. chmod +x class-dump если это не исполняемый файл. Вот документы на chmod .

Вам также может понадобиться указать абсолютный путь к классу-дампу, если он не на вашем пути.

Также попробуйте:

print " ".join(command)

и посмотрите, сможете ли вы запустить его, вставив результаты в оболочку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...