首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过删除文件现有基名的一部分来重命名文件

通过删除文件现有基名的一部分来重命名文件
EN

Stack Overflow用户
提问于 2020-10-30 02:16:05
回答 1查看 50关注 0票数 0

我有一个文件夹,里面有我所有的多通道3d渲染。我不得不多次启动和停止渲染,这导致了名称的更改。

名称:

代码语言:javascript
复制
Mask_Opening_Scene_Multipass_i1_0230.exr
Mask_Opening_Scene_Multipass_i1_0231.exr
Mask_Opening_Scene_Multipass_i1_0232.exr

大部分文件的名称为:

代码语言:javascript
复制
Mask_Opening_Scene_Multipass0230.exr

所以我需要的是删除,_i1_

这就是我所拥有的:

代码语言:javascript
复制
@echo off

set list="*_il_*"

echo List of files
echo.
echo.

for /r %%a in (%list%) do (

 set file=%%a
 echo "!file!" "!File:_i1_=!")

)

pause

有人能帮我吗?

EN

回答 1

Stack Overflow用户

发布于 2020-11-06 06:00:22

代码语言:javascript
复制
@echo off

setlocal enabledelayedexpansion

set "list=*_il_*"

echo List of files
echo.
echo.

for /f %%a in (%list%) do (

 set file=%%a
 echo "!file!" "%File:_i1_=%")

pause

代码语言:javascript
复制
@echo off

setlocal enabledelayedexpansion

set "list=*_il_*"

echo List of files
echo.
echo.

for /f %%a in (%list%) do (

 set file=%%a
 echo "!file!" "!File:_i1_=!")

pause

首先,您没有启用延迟扩展,所以您不能使用带有"!“的变量。然后,您使用/r而不是/f,/r用于路径,/f用于文件,因此使用/r可能会捕获错误。您不必指定_i1_将是什么,您只能放入%file:_i1_=%,这将使名称消失,我认为延迟的var (!)变量不是必需的.

我希望我能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64596982

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档