标题: [文件操作] [已解决]批处理怎样按照目录树一样的文本移动文件到指定文件夹? [打印本页]
作者: lxh623 时间: 2017-10-23 19:20 标题: [已解决]批处理怎样按照目录树一样的文本移动文件到指定文件夹?
文本a和文件是在C:\Users\Downloads\XGZY,目标文件路径是F:\杂志\香光庄严\
文本a是:开始是目标文件夹。比如,F:\杂志\香光庄严\n.126--2017.03.20\
文件名前面是制表符。
文本a格式可以按照批处理,稍作调整。
n.126--2017.03.20\
mag575385.pdf
mag575371.pdf
mag575372.pdf
mag575378.pdf
mag575379.pdf
mag575373.pdf
mag575377.pdf
mag575348.pdf
mag575349.pdf
mag575350.pdf
mag575351.pdf
mag575383.pdf
mag575382.pdf
n.125 别册--2016.12.21\
mag574587.pdf
mag574585.pdf
mag574580.pdf
mag574596.pdf
……………………………
谢谢!!!
作者: lifei259 时间: 2017-10-23 21:27
本帖最后由 lifei259 于 2017-11-2 19:10 编辑
- @echo off&setlocal EnableDelayedExpansion
- for /f "delims=" %%f in (a.txt) do (
- for /f "delims=" %%a in ('echo,%%f^|findstr "^n."') do (
- set name=%%a
- )
- if not %%f==!name! (
- xcopy /e /h /k /r /i /y %%f F:\杂志\香光庄严\!name!)
- )
- pause
复制代码
作者: lxh623 时间: 2017-10-23 21:40
本帖最后由 lxh623 于 2017-10-23 21:51 编辑
回复 2# lifei259
谢谢!文件名前面是制表符,但是,好像,运行的时候,文件夹路径前面是制表符?
或者就在当前文件夹创建目录,并且移动。
运行的时候,有路径就没有文件名,或者相反。而且,主目录也没有复制过去文件。
作者: lxh623 时间: 2017-10-23 22:23
暂时可以用,我把文件的制表符删除了。
代码略微改了- @echo off&setlocal EnableDelayedExpansion
- for /f "delims=" %%f in (a.txt) do (
- for /f "delims=" %%a in ('echo,%%f^|findstr "n."') do (
- set name=%%a
- )
- if %%f==!name! (echo,!name!>nul) else (
- move %%f F:\杂志\香光庄严\!name!)
- )
- pause
复制代码
少数不动或者乱动。
不知道为什么?
不动的。
n.86--2006.06\
an387611.pdf
bj093387612.pdf
bj093387613.pdf
bj093387627.pdf
bj093387625.pdf
an387626.pdf
bj093387623.pdf
乱动的,到了F:\杂志\香光庄严。没有进入文件夹。
bj093387594.pdf
bj093387595.pdf
bj093387596.pdf
bj093387597.pdf
bj093387598.pdf
bj093387599.pdf
bj093387589.pdf
an387587.pdf
bj093387588.pdf
n.84--2005.12\
谢谢了!为了彻底搞明白,请圆满一下。
作者: lifei259 时间: 2017-10-24 09:10
本帖最后由 lifei259 于 2017-11-2 19:12 编辑
二楼代码已改
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |