簡體   English   中英

此批處理文件只有一行將運行

[英]Only one line of this batch file will run

gdal_merge -o C:\test\RasterMerge\p023r027\p023r027_7t20010623_z16_merged.tif -seperate -q -v C:\test\RasterMerge\p023r027\p023r027_7t20010623_z16_merged.tif C:\test\RasterMerge\p023r027\p023r027_7t20010623_z16_nn10.tif C:\test\RasterMerge\p023r027\p023r027_7t20010623_z16_nn20.tif 
gdal_merge -o C:\test\RasterMerge\p024r027\p024r027_7t19990828_z16_merged.tif -seperate -q -v C:\test\RasterMerge\p024r027\p024r027_7t19990828_z16_nn10.tif C:\test\RasterMerge\p024r027\p024r027_7t19990828_z16_nn20.tif
gdal_merge -o C:\test\RasterMerge\p024r027\p023r026\p023r026_7t20001010_z16_merged.tif -seperate -q -v C:\test\RasterMerge\p024r027\p023r026\p023r026_7t20001010_z16_nn10.tif C:\test\RasterMerge\p024r027\p023r026\p023r026_7t20001010_z16_nn20.tif 
gdal_merge -o C:\test\RasterMerge\p024r027\p024r026\p024r026_7t20000729_z16_merged.tif -seperate -q -v C:\test\RasterMerge\p024r027\p024r026\p024r026_7t20000729_z16_nn10.tif C:\test\RasterMerge\p024r027\p024r026\p024r026_7t20000729_z16_nn20.tif 
gdal_merge -o C:\test\RasterMerge\p024r027\p023r026\p023r028\p023r028_7t20000519_z16_merged.tif -seperate -q -v C:\test\RasterMerge\p024r027\p023r026\p023r028\p023r028_7t20000519_z16_nn10.tif 

C:\test\RasterMerge\p024r027\p023r026\p023r028\p023r028_7t20000519_z16_nn20.tif 

注意:我已經從每個命令中刪除了其他 5 個文件名,以使其更具可讀性。 我正在開發一個 Python 工具,該工具將為我構建一個批處理文件,但是當我嘗試運行 this.bat 時,我得到的只是第一個成功運行的命令然后返回控制台。 我在 FWTools shell 中運行它。 我在十六進制編輯器中打開了批處理文件並搜索了額外的換行符並返回字符,但我沒有看到任何異常,所以 Python 似乎寫得正確。

gdal_merge本身是批處理文件嗎?

在這種情況下,您需要在每行之前輸入call以提示批處理文件在退出被調用的批處理文件時返回,否則新批處理文件中的退出調用將被視為真正的退出,因此應完全退出:

call gdal_merge -o C:\test\RasterMerge\p023r027\p023r027_7t20010623_z16_merged.tif -seperate -q -v C:\test\RasterMerge\p023r027\p023r027_7t20010623_z16_merged.tif C:\test\RasterMerge\p023r027\p023r027_7t20010623_z16_nn10.tif C:\test\RasterMerge\p023r027\p023r027_7t20010623_z16_nn20.tif 
call gdal_merge -o C:\test\RasterMerge\p024r027\p024r027_7t19990828_z16_merged.tif -seperate -q -v C:\test\RasterMerge\p024r027\p024r027_7t19990828_z16_nn10.tif C:\test\RasterMerge\p024r027\p024r027_7t19990828_z16_nn20.tif
...

(python 本身也可能通過批處理文件運行,但同樣適用,但您也可以使用call python gdal_merge.py -o...

如果這不是批處理文件,請嘗試使用start /B而不是call因為這將派生一個新的后台任務。 如果您需要按順序而不是並行調用它們,則只需使用start /B /WAIT

暫無
暫無

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

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