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

[文件操作] 请问如何批量删除文件名中位置相同但内容不相同的一部分字符

我有一批图片 文件名是这样的     001_byxm314_0003
                                                    002_byxm314_0001
                                                    003_byxm314_0012
                                                    004_byxm314_0004
                                                    ……

总结一下 就是  “  ABC_相同字符_DEFG  ”
其中: ABC是 从001顺序排列的数字   
            DEFG  也是数字   但是没有顺序

我现在想去掉文件名中 "  ABC_  "   这四个位置的字符  请问有什么批量处理的办法吗??

谢谢~~~

for循环,用_分割,取第一个,第三个字符输出就是了,新的文件就是你要的。

TOP

楼上的近似在说废话,看看楼主的发帖数,明显是个新手,能听懂你说的吗?

TOP

我是很新的新手。。。。今天遇到到这种情况,然后碰到这个网站,所以想试试看额
哪位大神指导指导额

TOP

for /f "delims=_ tokens=1*" %%a in ('dir /b *.jpg') do ren "%%~a_%%b" "%%b"

TOP

能跟我具体说说怎么在电脑上操作么   谢谢哦

TOP

回复 6# 执笔之痛

将5#代码复制,粘贴到记事本,保存为aaa.bat文件,放到你要改名的文件夹中,双击aaa.bat

TOP

不行哎,我的文件是在桌面上的一个“新建文件夹2”中
格式都是这样的
020-一层平面.jpg
021-二层平面.jpg

TOP

回复 8# 执笔之痛

为何与你顶楼说的要求不相符?

TOP

一样啊   就是吧前面“021-”这四个位置的内容给删掉,只保留后面"一层平面.jpg"的内容啊
是我没表达清楚么。。。。对不起哦

TOP

请将此批处理文件与要处理的 文件 置于同一目录
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('dir /b /a-d') do (
  4.   if "%%a" neq "%~nx0" (
  5.     set "fn=%%a"
  6.     if "!fn:~4!" neq "" rename "%%a" "!fn:~4!"
  7.   )
  8. )
  9. pause
复制代码

TOP

哇!!嘿嘿  终于好了呢  谢谢你!太感谢了!
以后也要在这多逛逛咯!
再次谢谢咯!

TOP

@echo off
setlocal enableDelayedExpansion
for /f "tokens=*" %%i in ('dir /b /a-d') do (
if not "%%i"=="%~nx0" set a=%%i
for /f %%a in ("!a!") do (
set b=%%a&call set "b=%%b:!b:~0,4!=%%"
ren %%i !b!>1
)
)

TOP

有没有能这样把文件重新排列下的
原先文件
020-一层平面.jpg
021-二层平面.jpg
021-三层平面.jpg
022-四层平面.jpg
.
.
然后想还按照这样的顺序给重新编号
020-一层平面.jpg
021-二层平面.jpg
022-三层平面.jpg
023-四层平面.jpg
.
.
的呢

TOP

返回列表