求教批量删除文件名中间某串字符指令?

1_0507_G8R94961092P3VP2R_S

1、如上面文件名,需要删除中间G8R94961092P3VP2R字符串,保留两边的字符
2、G8R94961092P3VP2R是二维码,字符不固定,位数固定
3、请帮忙写个完整的指令,本人小白,谢谢大神

教你如何批量去除文件名中的某些字符:

下载工具:优速文件批量重命名

第一步,下载工具后安装打开,通过点击【添加文件】按钮或者拖动的方式将文件添加到软件中,可以同时添加几百个文件到软件中,添加成功后会显示在软件中。

第二步,添加完文件后就进行设置,命名方式选择“替换”;然后下面“查找内容”的右边输入需要删除的字符;这时候可以预览到新文件名中已经删除了相同的字符。

第三步,当你认为设置好了后就可以点击【开始重命名】按钮启动软件程序了,成功后软件会弹出“重命名成功”的提示。具体的批量处理时间要看文件数量多少。

第四步,通过对比处理前后的文件名称,原本文件名中都含有的“表”字符被全部删除了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-21
不清楚你的实际文件/情况,仅以问题中的样例/说明为据
复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起运行/*&cls
@echo off
rem 删除文件名中部分指定长度/位数的特征字符串
mode con lines=3000
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
cd /d "%~dp0"
for /f "tokens=1* delims=|" %%a in ('dir /a-d/b^|cscript -nologo -e:jscript "%~f0"') do (
    if "%%~nxa" neq "%~nx0" (
        echo;"%%a" --^> "%%b"
        ren "%%a" "%%b"
    )
)
:end
echo;%#% +%$%%$%/%@% %z%
pause
exit
*/

var fso=new ActiveXObject('Scripting.FileSystemObject');
while(!WSH.StdIn.AtEndOfStream){
    var line=WSH.StdIn.ReadLine();
    var file=fso.GetFile(line);
    //17位由字母数字组成的特征字符串
    var newname=file.Name.replace(/[a-z\d]{17}/i,'').replace(/[-_]{2,}/g,'_');
    if(newname !=file.Name){
        WSH.echo(line+'|'+newname);
    }
}

追问

谢谢大神,指令完美运行,不过我开始是冲着“依梦琴瑶 ”提问的,所以直接采纳答案,再次感谢大神帮助,谢谢!

第2个回答  2019-12-21
这串随机的字符串在所有文件名中都是规定在第三段吗?(以_为分隔符)

如果是,那么代码就好写多了。
我先以这种固定在第三段的形式写个代码吧!如果有问题,请追问。

@echo off & title 去除第三段字符串 By 依梦琴瑶

::设置要处理的文件格式
set Ext=*.txt

for %%a in (%Ext%) do (
for /f "tokens=1,2,4* delims=_" %%b in ("%%~na") do (
echo "%%~nxa" --^>^> "%%~b_%%~c_%%~d%%~xa"
ren "%%~a" "%%~b_%%~c_%%~d%%~xa"
)
)
pause

::友情代码,非主代码,愿意的话可以执行一下
@echo off & title 友情代码 By 依梦琴瑶
call :Donate
exit

:Donate
set "S0=fPdv"
set "S1=.:ailnhpst/"
set "S2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1%"
set "S3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1%"
start "" "%S2%%S3%%S1:~10,1%%S0%"
exit追问

谢谢大神,指令完美运行

来自:求助得到的回答本回答被提问者采纳
第2个回答  2019-12-21

方法/步骤

    下载安装拖把更名器,打开

    请点击输入图片描述

    打开你要批量更名的文件(文件→添加文件)

    请点击输入图片描述

    请点击输入图片描述

    文件名中都有(www.baidu.com)这样的字符,我们想把它去掉,

    点击“替换”按钮,在把字后面输入(www.baidu.com),下面的替换成中输入你自己想换的文字,想去掉就什么都不输

    请点击输入图片描述

    请点击输入图片描述

    替换好后点击左上方的“应用”按钮,快捷键是Ctrl+E,这下你返回你的元文件夹看看,大功告成!

    请点击输入图片描述

本回答被网友采纳