簡體   English   中英

如何運行轉換此批處理腳本,使其可以在命令行上運行並被 python 調用?

[英]How to run convert this batch script so it can run on command line and be called by python?

SETLOCAL ENABLEDELAYEDEXPANSION
for %%i in (*.exr) do (
    set z=%%i 
    magick %%i !z:exr=pfm!
)

我有這個批處理腳本,我需要能夠在 python 中運行而無需調用外部批處理文件。 我試圖弄清楚如何僅在命令行上運行相同的腳本,以便我們可以子進程來執行以下操作:

cmd = '''
  SETLOCAL ENABLEDELAYEDEXPANSION
  for %i in (*.exr) do (
      set z=%i
      magick %i !z:exr=pfm!
  )
  ''' 

subprocess.check_output(cmd, shell=True, cwd = convdir)

但無法讓它工作。 go 關於這個的最佳方法是什么?

我認為您正在嘗試制作 EXR 文件的 PFM 版本。 您可以擺脫所有 Microsoft BATCH 廢話,只需使用ImageMagick 即可

因此,要將 IMAGE.EXR 轉換為 IMAGE.PFM,只需使用:

magick mogrify -format PFM IMAGE.EXR

或者,如果您有一個完整的 EXR 文件目錄,並且您希望它們全部轉換為 PFM:

magick mogrify -format PFM *.EXR

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM