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

[文件操作] 【已解决】批处理怎样更简单的删除文件名的前缀和后缀?

有如下的文件:
格式是,前缀是一个固定的字符串(如Muc_),中间节长度和内容不固定,后缀是乱码但长度固定(如_b00)。
  1. Muc_阿强_1_b00
  2. Muc_阿强_1_a_a08
  3. Muc_阿强_5_b_0s0
  4. ……
  5. Muc_阿珍_a_0a9
  6. Muc_阿明_g_s_5_0ac
  7. Muc_阿羽_9_0j5
复制代码
希望把文件名修改成如下:
  1. 阿强_1
  2. 阿强_1_a
  3. 阿强_5_b
  4. ……
  5. 阿珍_a
  6. 阿明_g_s_5
  7. 阿羽_9
复制代码
我的水平只能想出先把先弄到文本里,再通过文件修改
  1. @echo off&chcp 65001
  2. setlocal enabledelayedexpansion
  3. for %%a in (*.) do (
  4. set a=%%a
  5. echo !a! !a:~-4!>>1.txt
  6. )
  7. for /f "tokens=1,2" %%i in (1.txt) do (
  8. set b=%%i
  9. set b1=!b:%%j=!
  10. set a1=!b1:Muc_=!
  11. ren %%i !a1!
  12. )
  13. del 1.txt
  14. pause
复制代码
有没有大佬可以给个更简洁的bat?
1

评分人数

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

回复 2# 77七


    可以,很给力

TOP

回复 3# idwma


    啊这,没想到,可以这样简单

TOP

返回列表