Board logo

标题: [文件操作] [已解决]批处理怎样批量给某文件夹内文件添加前缀? [打印本页]

作者: comicguests    时间: 2011-8-15 10:26     标题: [已解决]批处理怎样批量给某文件夹内文件添加前缀?

  1. set Choice=
  2. echo 请将要加前缀文件夹直接拖入本窗口,然后回车:
  3. echo.
  4. set /p Choice=
  5. if ""%Choice%"" == "" goto 2
  6. set/p k=要添加的前缀为:
  7. if "%k%" == "ml" (goto ml)
  8. for /f "delims=" %%i in ('dir /a /b') do ren %%i  %k%%%i
复制代码
以上是我根据别人的代码改的,但拖入文件夹a后,
比如输入前缀home,
文件夹所在的目录中所有文件名前都多了home,
其实我是想把a文件夹里的内容加上home前缀的......大失败
而且这个批处理只有与a文件夹放在一起才有效......

所以在这里想请教一下各位前辈,
怎样改才能达到我的要求呢?

目的:
1.批量更改某文件夹内文件的名称(添加前缀)【希望可以给出 包括子文件夹及 不包括子文件夹 两种写法】
2.可以处理其他分区内的文件夹
3.能指定文件类型就更好了

因为家中未联网,回复会慢些,请见谅...
作者: 601997526    时间: 2011-8-15 12:21

最后一行改成这个
  1. for /f "delims=" %%i in ('dir /b "%choice%"') do ren %%i  %k%%%i
复制代码
如果要加子文件夹就在dir后加上 /s
  1. for /f "delims=" %%i in ('dir /s /b "%choice%"') do ren %%i  %k%%%i
复制代码
其它分区的是可以处理的,要加文件类型直接在%choice%后面加上\*.mp3
  1. for /f "delims=" %%i in ('dir /b "%choice%\*.mp3"') do ren %%i  %k%%%i
复制代码

作者: comicguests    时间: 2011-8-18 10:16

回复 2# 601997526
非常感谢!!
作者: comicguests    时间: 2011-8-23 08:56

  1. set Choice=
  2. echo         请将要加前缀文件夹直接拖入本窗口,然后回车:
  3. echo.
  4. set /p Choice=
  5. if ""%Choice%"" == "" goto 2
  6. set/p k=要添加的前缀为:
  7. if "%k%" == "ml" (goto ml)
  8. for /f "delims=" %%i in ('dir /s /b "%choice%"') do ren %%i  %k%%%i
复制代码
这样保存后无效啊...
文件名还是原来的...




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