Краткое примечание. Это в среде windows .
Я работаю над сценарием для запуска femzip для всех файлов и папок на общем диске. У меня есть командный файл, который делает что-то подобное. Проблема в том, что это зависит от папки run1
. В любом случае, мне было интересно, как заставить Python запускать exe и ссылаться на pfile
?
Я выложу пакетный скрипт и то, что у меня есть. Что у меня до сих пор, надо проверить все файлы и папки. Файл, который я хочу заархивировать, не полный, но его часть. Цель состоит в том, чтобы проверить наличие файла, заархивировать его с помощью femzip ( необходимо использовать femzip, модуль Python gzip не будет работать ), а если нет, игнорировать и перейти к следующая папка.
Перевод из командного файла:
set back=%cd%
set FEMZIPEXE=C:\FEMZIP\FEMZIP_8.68_dyna_NO_OMP_Windows_VS2008_MT_x64\femzip_dyna.exe
set FEMZIPPROFILE=C:\FEMZIP\FEMZIP_8.68_dyna_NO_OMP_Windows_VS2008_MT_x64\EVZ_lsdyna_femzip_181115.pfile
for /d %%i in (D:\RESCALE_RESULTS\*) do (cd "%%i\run1" & call %FEMZIPEXE% -Id3plot -OZd3plot -L4 -C%FEMZIPPROFILE% )
cd %back%
pause
Python-код, который у меня есть:
import sys
import os
import subprocess
#going to use the os module to check file and folders in windows
count = 0
for (dirname, dir, files) in os.walk('.'):
for filename in files:
if filename.startswith('d3plot'):
count = count + 1
if filename.startswith('d3plot'):
subprocess.Popen([r"C:\FEMZIP\FEMZIP_8.68_dyna_NO_OMP_Windows_VS2008_MT_x64\femzip_dyna.exe"])
subprocess.Popen([r"C:\FEMZIP\FEMZIP_8.68_dyna_NO_OMP_Windows_VS2008_MT_x64\EVZ_lsdyna_femzip_181115.pfile"])
else:
break