我有一个目录,其中包含一些名为* .data的子目录,其中包含一个名为Ratio.img的文件,一个名为Ratio.hdr的文件和一个目录vector_data。
这是我的设置: 目录:
-ABC.data/-Ratio.img
/-Ratio.hdr
/-vector_data
-DEF.data/-Ratio.img
/-Ratio.hdr
/-vector_data
我希望命令行解决方案从每个子目录中获取Ratio.img,将其重命名为子目录的名称(不带.data),然后将其移至目录本身。
我尝试了一些查找.img图像并将其移动的方法,但是我没有设法将重命名包含到文件名中。
# Unfortunately all those .img file are named Ratio, so they ask me to overwrite, what I clearly do not want to.
FOR /R %G in ("*.img") DO Move "%G" "G:\GRD_TEst\Products"
#I tried Renaming the Ratio.img-files, since I think I could work with them even if they are named blah.data.img
FOR /D %G in ("*.data") DO Rename "G:\GRD_TEst\Products\"%G"\Ratio.img" "G:\GRD_TEst\Products\"%G"\"%G".img"
# I also tried some "nesting" of for loops, but this did not lead to the output I wanted, basically create the path to my Ratio.img-File
for /D %G in (.data) do
FOR /D %X in ("Ratio.img") DO echo %G\%X
我希望输出像 目录:
-ABC.img
-ABC.data/Ratio.hdr
/vector_data
-DEF.img
-DEF.data/Ratio.hdr
/vector_data
答案 0 :(得分:0)
我可能已经找到了解决方法(由于我没有制作备份副本:()
,所以我必须复制我的Ratio.img文件。`for /D %%G in ("*.data") do (
FOR /D %%I in (Ratio.img) DO Rename G:\GRD_TEst\Products\%%G\%%I %%G.img
FOR /D %%H in (Ratio.hdr) DO Rename G:\GRD_TEst\Products\%%G\%%H %%G.hdr)`
这没有用,它重命名了文件,但是我不能以这种方式使用它们,因为它们无法导入到ArcMap中。移动将在第二步完成。
编辑:同样,在重命名.hdr之后,我最终也可以将数据导入ArcMap中,为我的最终解决方案,我更新了上面的代码片段。