标题: [文件操作] [已解决]批处理遍历文件夹名后的后续处理如何进行,如何可以只截断到文件名? [打印本页]
作者: 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去翻找- @echo off
- for /f "delims=" %%a in ('dir /b/s/a-d %~dp0\') do echo %%a >>1.txt
- 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
我想出来了,- @echo off
- for /f "delims=\ tokens=8" %%a in ('dir /b/s/ad') do echo %%a >>1.txt
- pause
复制代码
作者: playinthesky 时间: 2015-5-18 14:41
问题是怎么读取1.txt的内容,然后删除。
作者: pcl_test 时间: 2015-5-18 14:47
本帖最后由 pcl_test 于 2015-5-18 14:50 编辑
- @echo off
- for /f %%a in ('dir /b/s/ad') do del "D:\B\%%~na.*" /f /q
- pause
复制代码
作者: playinthesky 时间: 2015-5-18 14:57
回复 4# pcl_test
我讲错了,是文件夹的名!我再思考一下。谢谢大侠的提点,我修改一下标题。
作者: yangfengoo 时间: 2015-5-18 14:57
- @echo off
- 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"
- 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
按照你的思路:- @echo off
- (for /f "delims=" %%i in ('dir /b /s /ad %%~dp0') do (
- echo %%~nxi
- ))>1.txt
- for /f "delims=" %%i in (type "1.txt") do (
- rd /s /q "D:\B\%%i"
- )
复制代码
简化:- @echo off
- for /f "delims=" %%i in ('dir /b /s /ad %%~dp0') do (
- rd /s /q "D:\B\%%~nxi"
- )
复制代码
作者: 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 |