[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解决]批处理怎样批量给某文件夹内文件添加前缀?

  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.能指定文件类型就更好了

因为家中未联网,回复会慢些,请见谅...
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

最后一行改成这个
  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
复制代码
1

评分人数

TOP

回复 2# 601997526
非常感谢!!

TOP

  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
复制代码
这样保存后无效啊...
文件名还是原来的...

TOP

返回列表