标题: [文件操作] [已解决]BAT如何对文件夹里的所有子目录当中的全部txt操作? [打印本页]
作者: 非常感谢 时间: 2013-11-2 16:29 标题: [已解决]BAT如何对文件夹里的所有子目录当中的全部txt操作?
下面代码是针对文件夹里的所有txt文件操作。如果要对这个文件夹里的----所有子目录当中的全部txt操作,该如何写呢?谢谢- @echo off
- for /f "delims=" %%i in ('dir /b /a-d *.txt') do (
- (for /f "usebackq delims=" %%a in ("%%i") do (
- echo,BEGIN:VCARD
- echo,X-SKYPE-PSTNNUMBER:+%%a
- echo,END:VCARD&echo,
- ))>"new_%%i"
- rem move $ "%%i"
- )
复制代码
作者: foxJL 时间: 2013-11-2 16:38
你是要包括子目录吧?
dir /b /a-d *.txt 改成 dir /b /s /a-d *.txt
作者: terse 时间: 2013-11-2 16:46
注意加 /S 后的路径
作者: 非常感谢 时间: 2013-11-2 18:57
回复 2# foxJL
执行后如图:
作者: 非常感谢 时间: 2013-11-2 19:05
本帖最后由 非常感谢 于 2013-11-2 19:27 编辑
回复 3# terse
代码是您曾经帮忙写的,可以继续指点一下吗?上面代码中
rem move $ "%%i" 部分没弄明白,是否有存在的必要?不太明白它的作用,其上半部分看懂了。 我想让当前文件夹下所有txt和所有子目录里全部txt,执行操作。谢谢您。
作者: Batcher 时间: 2013-11-2 19:29
回复 5# 非常感谢
你把它删掉,再测试一遍。就知道是否有必要存在了。
作者: 非常感谢 时间: 2013-11-2 19:55
回复 6# Batcher
删除与否,数据结果相同。
作者: terse 时间: 2013-11-2 21:59
回复 5# 非常感谢
三楼已经提示你 加/S参数路径问题
>"new_%%i" 这里要变通试 "%%~dpi\new_%%~nxi"
至于 Move $ "%%i" 可以丢了
作者: 非常感谢 时间: 2013-11-3 02:44
回复 8# terse
今天又学到点知识了,谢谢您,趁热打铁,我想追加一个命令,删除本目录和所有子目录里批处理前的所有txt 文件,批处理后的当然保留了,兴趣和好奇是学习批处理的动力。谢谢大家!
作者: 非常感谢 时间: 2013-11-3 03:43
del $ "%%i" 就可以了,,,,呵呵。
作者: 非常感谢 时间: 2013-11-3 04:11
回复 8# terse
本目录和所有子目录里批处理后的所有txt ,对其改扩展名不会了,如要把它们全部改成vcf格式,如何写?
"%%~dpi\new_%%~nxi.vcf" 这样也行,不够不美观,
作者: terse 时间: 2013-11-3 09:44
"%%~dpi\new_%%~ni.vcf" 这样?
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |