标题: [文件操作] 【已解决】批处理如何根据文件名生成相应名的文件夹名并复制文件进去? [打印本页]
作者: 1134615818 时间: 2014-8-20 10:56 标题: 【已解决】批处理如何根据文件名生成相应名的文件夹名并复制文件进去?
本帖最后由 1134615818 于 2014-8-21 12:51 编辑
具体是这样的,现在在D:\aaa\bbb\f这个文件夹里有一批图片文件,现在想以这批图片文件名生成想应名的文件夹名,然后将这批文件夹放到E:\ttt\ggg\目录下面,并且将相应的文件拷到相应的文件夹里面,并在前缀名后面加上两个字“+1”
如果上面说得不够详细例如,D:\aaa\bbb\f文件夹里有rec.png tde.png fes.png tes.png 王小丽.png 张红.png --------还有很多。以这些文件名生成相应的文件夹名字放到E:\ttt\ggg\目录下面,文件夹名:rec tde fes tes 王小丽 张红 -------还有很多。然后将上面的rec.png tde.png fes.png tes.png 王小丽.png 张红.png --------复制到rec tde fes tes 王小丽 张红 -------这些文件夹里并在后缀名加上+1变成这样rec+1.png tde+1.png fes+1.png tes+1.png 王小丽+1.png 张红+1.png --------另外在D:\aaa\bbb\f-0文件夹里还有一批文件名相同的图片文件rec+2.png tde+2.png fes+2.png tes+2.png 王小丽+2.png 张红+2.png --------将这些也一一对应着前面名称的字眼放进相同的文件夹里,,,,
跪求高手给个解决代砖方案
作者: miskel 时间: 2014-8-20 12:47
http://www.bathome.net/thread-69-1-1.html
可以参照这个来修改
作者: 1134615818 时间: 2014-8-20 14:10
太复杂了,对于初学者的我来说,,,有无简单点,我看不明那个连接里的内容???求各位高手行行好吧,帮下小弟
作者: 1134615818 时间: 2014-8-20 15:16
未解决啊,求各位高手
作者: DAIC 时间: 2014-8-20 16:23
- @echo off
- set "src1=D:\aaa\bbb\f"
- set "src2=D:\aaa\bbb\f-0"
- set "dst=E:\ttt\ggg"
- for %%i in ("%src1%\*.png") do (
- if not exist "%dst%\%%~ni\" (
- md "%dst%\%%~ni"
- )
- copy "%%i" "%dst%\%%~ni\%%~ni+1%%~xi"
- if exist "%src2%\%%~ni+2%%~xi" (
- copy "%src2%\%%~ni+2%%~xi" "%dst%\"
- )
- )
复制代码
作者: 1134615818 时间: 2014-8-20 17:30
谢谢这位高手认真解答,,但好象最后将全部文件文放到D盘根目录,+2的那些图片没有放在相应的文件夹里面了,我看不明这个代码,,高这位高手再解答下,在下不胜感激
作者: DAIC 时间: 2014-8-20 17:52
回复 6# 1134615818 - set "src1=D:\aaa\bbb\f"
- set "src2=D:\aaa\bbb\f-0"
- set "dst=E:\ttt\ggg"
- for %%i in ("%src1%\*.png") do (
- if not exist "%dst%\%%~ni\" (
- md "%dst%\%%~ni"
- )
- copy "%%i" "%dst%\%%~ni\%%~ni+1%%~xi"
- if exist "%src2%\%%~ni+2%%~xi" (
- copy "%src2%\%%~ni+2%%~xi" "%dst%\"
- )
- )
- pause
复制代码
运行这个代码
结果发出来看看
作者: 1134615818 时间: 2014-8-20 20:04
谢谢这位高手,这次终于可以复制到指定文件目录里面了——但还是有一个地方有点不一样——就是图片那些在文件目录里的PNG文件也是放在同前缀名的文件目录里面的——例如那个 1-杭非+2.png 要放进到 1-杭非 文件夹里面,那个 55+2.png 要放进到 55 文件夹里面,那个 122-銀狐+2.png 要放到那个 122-銀狐 文件夹里面,……………………那个 山水紫+2.png 要放进到 山水紫 文件夹里面。只差这最后一步了——希望高手继续帮小弟完善这个代码,小弟不胜感激
作者: 1134615818 时间: 2014-8-21 10:06
自己顶下,求少将继续指点小弟
作者: DAIC 时间: 2014-8-21 10:32
回复 8# 1134615818 - @echo off
- set "src1=D:\aaa\bbb\f"
- set "src2=D:\aaa\bbb\f-0"
- set "dst=E:\ttt\ggg"
- for %%i in ("%src1%\*.png") do (
- if not exist "%dst%\%%~ni\" (
- md "%dst%\%%~ni"
- )
- copy "%%i" "%dst%\%%~ni\%%~ni+1%%~xi"
- if exist "%src2%\%%~ni+2%%~xi" (
- copy "%src2%\%%~ni+2%%~xi" "%dst%\%%~ni\"
- )
- )
复制代码
作者: 1134615818 时间: 2014-8-21 11:47
谢谢少将这位高手,,运行过代码,正确了,万分感谢
作者: DAIC 时间: 2014-8-21 12:37
回复 11# 1134615818
问题解决后,请编辑顶楼帖子在标题前面注明[已解决],并给回答者加分。
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |