Board logo

标题: [文件操作] [已解决]批处理遍历文件夹名后的后续处理如何进行,如何可以只截断到文件名? [打印本页]

作者: playinthesky    时间: 2015-5-18 14:23     标题: [已解决]批处理遍历文件夹名后的后续处理如何进行,如何可以只截断到文件名?

本帖最后由 playinthesky 于 2015-5-18 15:49 编辑

有文件夹A下面有

D:\A\1110-222-333-474
D:\A\1610-222-323-424
D:\A\1110-282-313-444
D:\A\1110-222-313-494
'''''
很多个
D:\A\1110-212-553-494

然后就这样,用DIR去翻找
  1. @echo off
  2. for /f "delims=" %%a in ('dir /b/s/a-d %~dp0\') do echo %%a >>1.txt
  3. pause
复制代码
将所有列出的文件夹的名字,存入1.txt

但是1.txt内的文件名是完整的路径

D:\A\1110-222-333-474
D:\A\1610-222-323-424
D:\A\1110-282-313-444
D:\A\1110-222-313-494
'''''
很多个
D:\A\1110-212-553-494

如何可以做到遍历之后,只留下的文件名是
1110-222-333-474
1610-222-323-424
1110-282-313-444
1110-222-313-494

不带前面的 D:\A\

然后在使用  批处理 ,读取 1.txt 的文件名目录

在D:\B\ 的目录下将

1110-222-333-474
1610-222-323-424
1110-282-313-444
1110-222-313-494
等相同名的文件给删除

del /s/q    %%a
作者: playinthesky    时间: 2015-5-18 14:40

我想出来了,
  1. @echo off
  2. for /f "delims=\ tokens=8" %%a in ('dir  /b/s/ad') do echo %%a >>1.txt
  3. pause
复制代码

作者: playinthesky    时间: 2015-5-18 14:41

问题是怎么读取1.txt的内容,然后删除。
作者: pcl_test    时间: 2015-5-18 14:47

本帖最后由 pcl_test 于 2015-5-18 14:50 编辑
  1. @echo off
  2. for /f %%a in ('dir /b/s/ad') do del "D:\B\%%~na.*" /f /q
  3. pause
复制代码

作者: playinthesky    时间: 2015-5-18 14:57

回复 4# pcl_test


    我讲错了,是文件夹的名!我再思考一下。谢谢大侠的提点,我修改一下标题。
作者: yangfengoo    时间: 2015-5-18 14:57

  1. @echo off
  2. for /f "delims=" %%a in ('dir /b/ad d:\A') do xcopy /y  /e "d:\B\%%~na" "d:\A\%%~na" &&rd /s/q "d:\B\%%~na"
  3. pause
复制代码
求教MOVE "d:\B\%%~na" "d:\A\%%~na" 拒绝访问是什么原因
作者: pcl_test    时间: 2015-5-18 15:04

回复 5# playinthesky
del "D:\B\%%~na.*" /f /q改为rd "D:\B\%%~na" /s /q
作者: gawk    时间: 2015-5-18 15:17

按照你的思路:
  1. @echo off
  2. (for /f "delims=" %%i in ('dir /b /s /ad %%~dp0') do (
  3.     echo %%~nxi
  4. ))>1.txt
  5. for /f "delims=" %%i in (type "1.txt") do (
  6.     rd /s /q "D:\B\%%i"
  7. )
复制代码
简化:
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /s /ad %%~dp0') do (
  3.     rd /s /q "D:\B\%%~nxi"
  4. )
复制代码

作者: playinthesky    时间: 2015-5-18 15:49

回复 8# gawk


    你水平真高啊!!!
作者: playinthesky    时间: 2015-5-23 22:52

回复 8# gawk


    谢谢你。高手。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2