python subprocess.call () «нет такого файла или каталога»
Мы нашли несколько вопросов по модулю, но более распространенной проблемой, по-видимому, является получение правильного списка аргументов, который, я думаю, мне удалось (в конце концов)
Я пытаюсь запустить программу, которая ожидает ввода, как это в командной строке,
fits2ndf in out
с 'в' путь к файлу, который нужно преобразовать, и 'из' путь и имя файла для сохранения результата.
Таким образом, используя подпроцесс,
subprocess.call(["fits2ndf","/media/tom_hdd/Transfer/reference.fits","/media/tom_hdd/Transfer/reference.sdf"])
это поднимает,
Traceback (most recent call last):
File "", line 1, in
File "/usr/lib/python2.7/subprocess.py", line 493, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
настройкаshell=TRUE
(что я знаю плохо) дает тот же результат. Не уверен, что это актуально, но я использую tcsh. Какие-либо предложения?
Редактировать в ответ на вопросы
У меня нетT постоянно установить путь однакоfits2ndf
является частью пакета программ, которые я инициализирую с помощью
% tcsh
% setenv STARLINK_DIR /home/tomq/star-kapuahi
% source $STARLINK_DIR/etc/login
% source $STARLINK_DIR/etc/cshrc
и обычно работает из любого каталога без указания полного пути.