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

[文件操作] 如何用批处理添加文件夹名字为前缀重命名内部文件

我找到一个但它直接以文件夹名加1,2,3命名全部文件,我想保留原文件名只不过前缀加上文件夹的名字,然后可以把指定关键字的文件批量移动到某个文件夹下,万分感激!
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('dir /b /s /ad') do (
  4.     echo 正在处理文件夹 %%a
  5.     pushd "%%a"
  6.     set n=0
  7.     for /f "delims=" %%b in ('dir /b /a-d *.txt') do (
  8.         set /a n+=1
  9.         ren "%%b" "%%~nxa-!n!%%~xb"
  10.     )
  11.     popd
  12. )
复制代码

回复 2# Batcher 谢谢,还有问题,我的文件夹是存在NAS ,电脑通过SMB读取文件,提示“用作为当前目录的以上路径启动了 CMD.EXE。
UNC 路径不受支持。默认值设为 Windows 目录。”能解决吗

TOP

回复 1# kuio88


第9行改成:
  1. ren "%%b" "%%~nxa-%%b"
复制代码
第6、8行去掉
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表