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

[文本处理] 求助BAT脚本修改批量删除前缀

[复制链接]
发表于 2020-10-28 19:55:08 | 显示全部楼层 |阅读模式
  1. @echo off
  2. setlocal enabledelayedexpansion

  3. ::批量去掉文件名前N个字符,如果有文件夹会搜索文件夹下的每个文件进行修改
  4. set /p format=请输入需要操作的文件格式:
  5. set /p deletenum=请输入需要删除文件名前多少个字符:
  6. for /r %%i in (.) do (
  7.     for /f "delims=" %%a in (' dir /b "%%i\*.%format%" 2^>nul ') do (
  8.                 set "t=%%~na"
  9.         ren "%%i\%%a" "!t:~%deletenum%!%%~xa"
  10.     )
  11. )

  12. pause
复制代码
求助,如何把bat 文件修改成改:  文件格式jpg,自动删前3个字符。   软件一点就可以自动运行,不要手输入
发表于 2020-10-28 22:01:15 | 显示全部楼层
  1. @echo off
  2. for /f "delims=" %%a in ('dir /a-d/s/b *.jpg') do call :ren_file "%%~fa" "%%~nxa"
  3. exit

  4. :ren_file
  5. set file="%~2"
  6. setlocal
  7. ren "%~1" "%file:~4%"
  8. endlocal
  9. exit /b
复制代码
发表于 2020-10-28 22:32:19 | 显示全部楼层
回复 1# ilv1982


把第5行、第6行改成这样可以吗:
set "format=jpg"
set "deletenum=3"
 楼主| 发表于 2020-10-29 14:06:54 | 显示全部楼层
感谢楼上2位, 2种方法都已测试可行。  
2楼绝对是高之手级别
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 05:13 , Processed in 0.016148 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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