如何用bat脚本改文件名字?

某个目录下有若干个数据文件,比如ABCXXXDEF.DOCABCYYYDEF.DOCABCZZZDEF.DOC如何用bat脚本改文件名字,把ABCXXXDEF.DOC,其... 某个目录下有若干个数据文件,比如

ABCXXXDEF.DOC
ABCYYYDEF.DOC
ABCZZZDEF.DOC

如何用bat脚本改文件名字,把 ABCXXXDEF.DOC,
其中包含XXX的文件名,改成 1-ABCXXXDEF.DOC, 这样

ABCXXXDEF.DOC 改成 1-ABCXXXDEF.DOC
ABCYYYDEF.DOC 改成 2-ABCYYYDEF.DOC
ABCZZZDEF.DOC 改成 3-ABCZZZDEF.DOC

请高手帮帮忙,谢谢
展开
 我来答
幸之守施点肆Z
2022-06-06
知道答主
回答量:3
采纳率:0%
帮助的人:651
展开全部

1、新建一个文本文档

注意:要跟你的那些文件放一起

2、在文本文档里输入rename命令(即:ren 原文件名 后文件名)

注意:要保存为ANSI文件

3、右键重命名后缀名为bat,然后运行

改完之后出现的弹窗直接点确定

4、这时候,文件名就成功修改了

完毕!

qop_dob
2022-06-06 · TA获得超过1.5万个赞
知道大有可为答主
回答量:1.3万
采纳率:79%
帮助的人:3923万
展开全部
不清楚你的实际文件/情况,仅以问题中的样例说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起双击运行
<# :
cls&echo off&cd /d "%~dp0"&mode con lines=5000
rem 给当前目录里文件名称中包含有不同指定关键字字符串的文件添加不同名称前缀字符
set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%_% %z%
set "self=%~f0"
powershell -NoProfile -ExecutionPolicy bypass "Get-Content -literal '%~f0'|Out-String|Invoke-Expression"
echo;%#% +%$%%$%/%_% %z%
pause
exit
#>
$relation=@"
XXX|1-
YYY|2-
ZZZ|3-
"@;

$b=[Convert]::FromBase64String("IC0tPiA=");
$c=[Text.Encoding]::Default.GetString($b);
$self=get-item -literal $env:self;
$current=$self.Directory.FullName;
$arr=$relation.trim() -split '[\r\n]+';
$files=@(dir -literal $current|?{($self.Name -ne $_.Name) -and ($_ -is [System.IO.FileInfo])});
for($i=0;$i -lt $files.length;$i++){
    $base=$files[$i].BaseName.ToLower();
    for($j=0;$j -lt $arr.length;$j++){
        $brr=$arr[$j].split('|');
        if($base.Contains($brr[0].ToLower())){
            $files[$i].Name+$c+$brr[1]+$files[$i].Name;
            break;
        }
    }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式