Board logo

标题: [文件操作] [已解决]批处理怎样批处理重命名当前文件夹和子文件夹里的文件? [打印本页]

作者: 叶殇    时间: 2010-11-21 21:51     标题: [已解决]批处理怎样批处理重命名当前文件夹和子文件夹里的文件?

本帖最后由 pcl_test 于 2016-7-10 22:39 编辑

文件夹a和下面的子文件夹:
a/b-c-d.txt
a/e/f-g-h.txt
a/i/g/x-y-z.txt

要求: - 替换成空格, txt替换成html

结果
a/b c d.html
a/e/f g h.html
a/i/g/x y z.html

补充: 文件名可能包含 , ' " 等特殊符号

谢谢

[ 本帖最后由 叶殇 于 2010-12-5 19:00 编辑 ]
作者: TX_kakashi    时间: 2010-11-22 13:33

  1. for /f "delims=" %%a in ('dir/b/s/a-d *.txt') do (
  2.      ren "%%a" "%%~na.txt"
  3.   )
复制代码

作者: lvsehuaxue    时间: 2010-11-22 20:50

  1. @echo off&Setlocal Enabledelayedexpansion
  2. for /f "delims=" %%a in ('dir/b/s/a-d *.txt') do (
  3.      set v=%%~na
  4.      set v=!v:-= !
  5.      ren "%%a" "!v!.txt"
  6. )
  7. pause
复制代码

作者: 叶殇    时间: 2010-11-24 11:36

二楼代码不行

三楼代码可以, 但是没有 把后缀名txt 换成html
作者: flyhorse85    时间: 2010-11-24 13:13     标题: 代码解释

如果给出答案的同时给出代码的解释就好了,新手看起来比较费劲。
经常来这个网站的新手占多数,希望各位大侠多多体谅。
作者: flyhorse85    时间: 2010-11-24 13:18     标题: 未看懂

这一段代码看不懂,那位大侠解释下,谢谢!   
set v=%%~na
     set v=!v:-= !
     ren "%%a" "!v!.txt"
作者: hhzjxss    时间: 2010-11-29 14:56

原帖由 叶殇 于 2010-11-24 11:36 发表
二楼代码不行

三楼代码可以, 但是没有 把后缀名txt 换成html



对头,谢谢分享,是这样的,测试成功!




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