我在一个文件夹中有多个文件,我想使用Windows 7中的命令提示符从特定位置编辑文件名
文件名:
32132_213212_5416813135418.txt >> 32132_ABCXYZ.txt
989545514_545445_1354189313218.txt >> 989545514_ABCXYZ.txt
32541384_784548_6542314141482.txt >> 32541384_ABCXYZ.txt
答案 0 :(得分:0)
因此这是一个脚本,当在INSIDE中运行时,该文件夹将使用名称的第一部分(最多第一个“ _”)重命名所有.txt文件,并根据您的指定附加到末尾的“ _ABCXYZ”
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
REM :: Loop through each file in the current folder
for %%f in (*) do (
REM :: Get just the file name as the loop returns entire path
set origName=%%~nxf
REM :: Check its a .txt file, so we don't rename anything else.
if !origName:~-4!==.txt (
REM :: Get everything UP TO the first "_" character
for /f "tokens=1 delims=_" %%a in ("!origName!") do set firstPart=%%a
REM :: Now we can append the string you specified to the end of first past
set newName=!firstPart!_ABCXYZ.txt
REM :: Perform the actual rename
ren !origName! !newName!
echo RENAMED !origName! TO !newName!
)
)
pause
我已经评论了所有内容,因此您可以看到所有功能。可以压缩它,而不能将其分成很多行,但是我将其保留为冗长的样子,以便您了解其功能。
如果您想要一个更紧凑,更高效的笔记本电脑,请告诉我...如果您要处理数百万个文件,这将非常有用。