更改文件名中的某个字符串(Windows批处理循环,通配符)

时间:2018-05-29 01:33:52

标签: windows loops batch-file cmd

我有ogr2ogr命令,我将命令与windows shell命令混合

我必须仅遍历某些扩展程序,即*.shp。而且,以下命令是我开始的地方

for %f in (*.shp) do (ogr2ogr .....

但现在我必须使用这种名称循环访问文件。

road_node_1.shp
road_node_2.shp
...
road_node_9.shp

我玩过许多类型的通配符,例如

for %f in (road_node_*) do (ogr2ogr .....

然后循环遍历所有与*.shp相关的文件,文件名(不带扩展名)相同

road_node_1.shx
road_node_1.dbf
road_node_1.cpg
road_node_1.prj..

所以确实需要不必要的文件,这需要更多的时间来处理

我尝试了下面的命令并且无法正常工作

for %f in (road_node_*.shp) do (ogr2ogr .....

我想知道是否有办法像这样循环文件名。

1 个答案:

答案 0 :(得分:-1)

@Aacini

这很奇怪...... 该命令几个小时前没有工作

  

表示(road_node _ * .shp)中的%f

现在......这个命令就像魔术一样。

虽然问题已解决但我不知道改变了什么:(