找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 32026|回复: 11

[文件操作] [已解决]BAT如何对文件夹里的所有子目录当中的全部txt操作?

[复制链接]
发表于 2013-11-2 16:29:19 | 显示全部楼层 |阅读模式
下面代码是针对文件夹里的所有txt文件操作。如果要对这个文件夹里的----所有子目录当中的全部txt操作,该如何写呢?谢谢
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /a-d *.txt') do (
  3.     (for /f "usebackq delims=" %%a in ("%%i") do (
  4.          echo,BEGIN:VCARD
  5.          echo,X-SKYPE-PSTNNUMBER:+%%a
  6.          echo,END:VCARD&echo,
  7.      ))>"new_%%i"
  8.      rem move $ "%%i"
  9. )
复制代码

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2013-11-2 16:38:19 | 显示全部楼层
你是要包括子目录吧?
dir /b /a-d *.txt 改成 dir /b /s /a-d *.txt

评分

参与人数 1技术 +1 收起 理由
非常感谢 + 1 乐于助人

查看全部评分

发表于 2013-11-2 16:46:59 | 显示全部楼层
注意加 /S 后的路径
 楼主| 发表于 2013-11-2 18:57:18 | 显示全部楼层
回复 2# foxJL

执行后如图:
 楼主| 发表于 2013-11-2 19:05:24 | 显示全部楼层
本帖最后由 非常感谢 于 2013-11-2 19:27 编辑

回复 3# terse


代码是您曾经帮忙写的,可以继续指点一下吗?上面代码中
     rem move $ "%%i" 部分没弄明白,是否有存在的必要?不太明白它的作用,其上半部分看懂了。 我想让当前文件夹下所有txt和所有子目录里全部txt,执行操作。谢谢您。
发表于 2013-11-2 19:29:11 | 显示全部楼层
回复 5# 非常感谢


    你把它删掉,再测试一遍。就知道是否有必要存在了。
 楼主| 发表于 2013-11-2 19:55:16 | 显示全部楼层
回复 6# Batcher
删除与否,数据结果相同。
发表于 2013-11-2 21:59:54 | 显示全部楼层
回复 5# 非常感谢
三楼已经提示你 加/S参数路径问题
>"new_%%i" 这里要变通试 "%%~dpi\new_%%~nxi"
至于 Move $ "%%i" 可以丢了

评分

参与人数 1技术 +1 收起 理由
非常感谢 + 1 乐于助人

查看全部评分

 楼主| 发表于 2013-11-3 02:44:49 | 显示全部楼层
回复 8# terse
今天又学到点知识了,谢谢您,趁热打铁,我想追加一个命令,删除本目录和所有子目录里批处理前的所有txt 文件,批处理后的当然保留了,兴趣和好奇是学习批处理的动力。谢谢大家!
 楼主| 发表于 2013-11-3 03:43:46 | 显示全部楼层
del $ "%%i" 就可以了,,,,呵呵。
 楼主| 发表于 2013-11-3 04:11:11 | 显示全部楼层
回复 8# terse

本目录和所有子目录里批处理后的所有txt ,对其改扩展名不会了,如要把它们全部改成vcf格式,如何写?
    "%%~dpi\new_%%~nxi.vcf" 这样也行,不够不美观,
发表于 2013-11-3 09:44:32 | 显示全部楼层
"%%~dpi\new_%%~ni.vcf" 这样?

评分

参与人数 1技术 +1 收起 理由
非常感谢 + 1 对批处理又开阔了一点,谢谢您!

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 18:33 , Processed in 0.038995 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表