繁体   English   中英

CMD批处理文件GDAL-扩展for / f循环以转义临时文件

[英]CMD Batch file GDAL - extending the for /f loop to escape temporary files

经过一段时间的努力,我发现了如何从gdalinfo中提取每个地理参考jpg文件的坐标。 我的问题是,我不知道如何在不需要临时文件的情况下执行所有操作。 多余的行和临时文件会增加几个小时的处理时间。

如何“合并”这些操作? 没有临时文件,仅对每个文件进行一次> the.mmm将非常感谢您的帮助!

for /R %%g in (*.jpg) do echo 0.000 0.000 > %%~png.mmt

for /R %%g in (*.jpg) do gdalinfo %%g | findstr /i /C:"size is" /C:"lower left" /C:"upper right" >>%%~png.mmt

for /R %%g in (*.jpg) do echo 0.000 >> %%~png.mmt

for /R %%a in (*.mmt) do (for /F "tokens=1,2 delims=SizeisLowrftUpRgh,() " %%G IN (%%a) DO @echo %%G %%H >> %%~pna.mmm)

结果看起来像这样:

0.000 0.000 
1931 1448 
317600.000 6543562.880 
317677.240 6543620.800 
0.000

gdalinfo | findstr gdalinfo | findstr提取我要查找的行。 “ for / f令牌”从这些行中删除文本。

您已经完成了大部分工作:-)

@echo off
for /r %%F in (*.jpg) do (
  echo 0.000 0.000
  for /f "tokens=1,2 delims=SizeisLowrftUpRgh,() " %%A in (
    'gdalinfo "%%F" ^| findstr /i /c:"size is" /c:"lower left" /c:"upper right"'
  ) do echo %%A %%B
  echo 0.000
)>"%%~pnF.mmm"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM