我的文件夹中有多个文件,我想使用cmd从特定位置编辑文件名

时间:2018-12-11 05:35:57

标签: windows cmd

我在一个文件夹中有多个文件,我想使用Windows 7中的命令提示符从特定位置编辑文件名

文件名:

32132_213212_5416813135418.txt        >> 32132_ABCXYZ.txt
989545514_545445_1354189313218.txt    >> 989545514_ABCXYZ.txt
32541384_784548_6542314141482.txt     >> 32541384_ABCXYZ.txt

1 个答案:

答案 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

我已经评论了所有内容,因此您可以看到所有功能。可以压缩它,而不能将其分成很多行,但是我将其保留为冗长的样子,以便您了解其功能。

如果您想要一个更紧凑,更高效的笔记本电脑,请告诉我...如果您要处理数百万个文件,这将非常有用。