当我在cmd提示符下运行以下命令时,它可以工作:
for /R %f in (*.shp) do ogr2ogr -nln merge -update -append merge.shp %f
但是当我从.bat文件运行它时它不起作用。说-nln出人意料。
无论如何我可以从.bat文件中运行它。
答案 0 :(得分:3)
%
字符对命令行参数和FOR
参数具有特殊含义。
要将百分比视为常规字符,请加倍:%%
当您从批处理文件执行它时,您应该这样写:
@echo on
for /R %%f in (*.shp) do ogr2ogr -nln merge -update -append merge.shp %%f
pause
有关详细信息,请参阅此处:http://ss64.com/nt/syntax-esc.html