批处理脚本与命令行

时间:2016-05-08 02:50:26

标签: windows batch-file cmd ogr2ogr

当我在cmd提示符下运行以下命令时,它可以工作:

for /R %f in (*.shp) do ogr2ogr -nln merge -update -append merge.shp %f 

但是当我从.bat文件运行它时它不起作用。说-nln出人意料。

无论如何我可以从.bat文件中运行它。

1 个答案:

答案 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