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

[其他] 批处理如何删除/替换多个文件夹下的文件的文件名中指定字符及其前面的字符串

[复制链接]
发表于 2016-9-27 17:55:14 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-9-27 19:34 编辑

希望大神能够帮帮忙,文件夹有几十个,文件有上千个,一个个改名字很费时间,这些名字都是有规律的,比如:“abd_01;cdre_02;fsds_03”。希望能够批量删除文件名中“_"之前的字符。最好是能修改前面的字符为“6”。列如修改为“601;602;603”。
发表于 2016-9-27 18:25:25 | 显示全部楼层
本帖最后由 DiamondbacK 于 2016-9-27 18:32 编辑

只重命名文件?

  1. PowerShell -c "ls -R | ? { ! $_.PSIsContainer } | rni -N { $_.Name -replace '.*_', '6'; }"
复制代码

  1. :: 第三方工具,无法直接排除文件夹。
  2. ren2 ".*_(.*)" "6$1" -r -f
复制代码
发表于 2016-9-27 19:32:45 | 显示全部楼层
本帖最后由 pcl_test 于 2016-9-27 19:35 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in ('dir /a-d/b/s *_*') do (
  3.     set "name=%%~na"
  4.     ren "%%a" "6!name:*_=!%%~xa"
  5.     rem 删除ren "%%a" "!name:*_=!%%~xa"
  6. )
  7. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 06:02 , Processed in 0.016873 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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