У меня есть небольшой файл.exe, который я бы хотел запустить во всех файлах в данном каталоге. Он запускается следующим образом: "./myprogram.exe file" и преобразует мои файлы в другой тип данных.
Теперь я хочу создать скрипт python, который запускает этот exe для всех файлов в данном каталоге, включая все подкаталоги. Я совершенно не знаком с python, поэтому я понятия не имею, как это сделать.
У кого-нибудь есть предложения, как это сделать? Нужен ли мне питон или любой другой язык скриптов?
Большое спасибо!
В окне linux я бы сказал вам использовать вызов find
, но .exe
похоже, говорит вам, что вы находитесь в окнах.
В python вы должны использовать что-то вроде этого
for root, dir, files in os.walk(path):
for name in files:
subprocess.call(["path_to_your_programm/myprogram.exe", os.path.join(root, name)]
Для сопоставления всех файлов из каталога + подкаталогов посмотрите: Использовать Glob() для поиска файлов рекурсивно в Python?
Чтобы вызвать свою программу, посмотрите: Как выполнить программу с python? os.system не работает из-за пробелов в пути
Вы должны иметь возможность изменить пример в документах python для os.walk, чтобы сделать это.
Чтобы на самом деле вызывать свою внешнюю программу, вы можете использовать subprocess.call.
find . -exec myprogram {} \;
должен делать вещи