作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有几个 tif 格式的文件。我想将它们翻译成 ENVI 格式。我对一个文件成功了,但我想对目录中的其余文件执行此操作。
the first file in the directory is:Ser_W55_20100101_A.tif.
the second file in the directory is:Ser_W55_20100102_A.tif and so on .....
我在 windows 上工作,所以我只启动 cmd 然后写了命令:
C:\Users>gdal_translate -of "ENVI" D:\Ser_W55_20100101_A.tif D:\Ser_W55_20100101_A.img
这非常有效。关于如何对所有文件执行此操作并返回相同名称的任何想法(从(tif)更改为 ENVI)
最佳答案
您可以为此制作一个批处理文件,执行如下操作:
@ECHO OFF
SETLOCAL EnableDelayedExpansion
SET mypath=D:\test\
FOR /F %%i IN ('DIR /B %mypath%*.tif') DO (
SET infile=%%i
SET outfile=!infile:.tif=.img!
gdal_translate -of "ENVI" %mypath%!infile! %mypath%!outfile!
)
这仅在当前目录中运行,如果要包含子文件夹,请将 /S
标志添加到 dir 语句。我最好先检查一下发生了什么,为此你可以在 gdal cmd 前面添加一个 ECHO
,所以 ECHO gdal_translate...
,然后添加一个PAUSE
最后。这样它只会将命令打印到控制台而不是实际运行它们。
关于gdal - 如何使用 gdal 和 cmd 遍历多个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16691943/
我是一名优秀的程序员,十分优秀!