Board logo

标题: [文件操作] 批处理如何批量删除文件名中的特定后缀字符串 [打印本页]

作者: ruotian    时间: 2016-8-8 12:46     标题: 批处理如何批量删除文件名中的特定后缀字符串

本帖最后由 pcl_test 于 2017-4-10 21:38 编辑

求助BAT遍历批量替换文件名中的字符串
条件:1.     000001_2.jpg
         2.     000002_2.jpg
         3.     000003_2.jpg

删除掉文件名中的_2

结果: 1.     000001.jpg
          2.     000002.jpg
          3.     000003.jpg
作者: ruotian    时间: 2016-8-8 12:49

帮忙看看怎么改
@ECHO OFF
COLOR 0a
set tmpFilePath=%temp%\tmp.lst
del "%tmpFilePath%" /q 1>nul 2>nul
set inputDir=%~dp1
echo 正在搜索文件,请稍候...
dir "%inputDir%*.jpg" /s /a /b>>"%tmpFilePath%"
FOR /F "tokens=*" %%a IN (
'more "%tmpFilePath%"'
) DO (
echo 正在将文件%%a重命名 *.pdg
ren "%%a"  *.pdg
)
del "%tmpFilePath%" /q 1>nul 2>nul
PAUSE
作者: pcl_test    时间: 2016-8-8 14:05

第三方
  1. ren2 -f "(.+)_\d+(\.jpg)" "$1$2"
复制代码

作者: ruotian    时间: 2016-8-8 23:07

如何实现遍历功能
@ECHO OFF
COLOR 0a
echo 正在搜索文件,请稍候...
for /f "tokens=1,2* delims=_" %%i in ('dir /s/b/a *.pdg') do move %%i_%%j %%i.pdg
PAUSE
作者: pcl_test    时间: 2016-8-9 00:05

纯路过
  1. ren2 -r -f "(.+)_.+(\.pdg)" "$1$2"
复制代码

作者: ruotian    时间: 2016-8-9 01:24

回复 5# pcl_test


    第三方不会用,你这个能实现遍历递归的工能嘛。我表达的可能不清楚。需要的是批量处理多个文件夹内的文件




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2