• [批处理]批量将文件名更名为其上级目录名


    前言

    今天从网上下载了点ASP.NET的视频,但是由于是免费的,所以有很多垃圾信息

    更讨厌的是,每个文件名也都有非常长的一大长串垃圾广告,需要批量删除这些文件名中的广告字符串

    如图:

    目的

    要做一个程序来批量修改文件名,将一个文件夹下所有的文件的文件名,修改为其上级目录的名字

    注意不是修改更名为同一级目录名,而把自己的名字更名为自己所在的上一级目录的名字

    如上图,目的是把每个视频文件改名为其所在目录名

    使用方法

    把要执行的包含所有文件的总文件夹拖动到bat中,会显示执行效果,如果确认则真正执行



    处理完成后效果图:

    所有文件都更名为其上级目录名



    注意

    1,当文件夹内有多个文件,且扩展名相同,则会发生文件名冲突错误,会导致从当前文件夹内从第二文件起之后的文件都不更名

    请自行编辑文件过滤信息,以保证每个文件夹下被更名文件都是唯一的

    2,当文件名中含有特殊字符时。如! 或&符号等会导致更名失败,可以先执行以下命令

    for /f "delims=" %i in ('dir /s /b /a:-d 【要处理文件的目录】*.*') do @ren "%i" "a%~xi"

    先把所有文件的文件名都更名为任意字符,然后再批量修改即可

    批处理代码,保存至bat文件中运行即可:

    @echo off
    :start
    setlocal enabledelayedexpansion
    set isrun=n
    
    echo 请把包含要处理的文件的[文件夹]拖动到此处,回车确定
    set dir=n&set /p dir=
    if "%dir:"=%"=="n" cls&goto start
    cls&echo ====================================
    :run
    for /f "delims=" %%i in ('dir /s /b /a:-d %dir%*.*') do (
        set full=%%~dpnxi
        set exten=%%~xi
        set path=%%~dpi
        set path=!path:~0,-1!
        for /f "delims=" %%j in ("!path!") do set path=%%~nj
        if /i "!isrun!"=="n" (
            echo ren "!full!" "!path!!exten!"
        ) else (
            ren "!full!" "!path!!exten!"
            echo 更名为:"!path!!exten!"
        )   
    )
    echo ====================================
    if /i "%isrun%"=="n" (
        echo 即将执行以上操作,是否执行[Y/N]
        set isrun=n&set /p isrun=
        if /i "!isrun!"=="y" ( goto run ) else ( cls&goto start )
    ) else (
        echo.&echo 更名完成!
        echo 任意键返回&pause>nul&cls&goto start   
    )
    View Code

    ——原文发表于2012-7-24 12:26

  • 相关阅读:
    UI界面思想
    ARM汇编语言(3)(寄存器读写控制外设)
    ARM汇编(2)(指令)
    ARM汇编语言(1)(基本概念)
    QT软件初次使用中遇到的若干问题及思考
    webpack4打包html中img后src为“[object Module]”问题(已解决)
    gulp dev报错:ReferenceError:primordials is not defined(已解决)
    Ubuntu20.04安装yarn报错gpg: can't connect to the agent: IPC connect call failed(已解决)
    手摸手教程之ubuntu20.04更改国内镜像源(附其他版本ubuntu换源教程,最新详细教程)
    Alert提示框的vue组件编写
  • 原文地址:https://www.cnblogs.com/xxcanghai/p/4584153.html
Copyright © 2020-2023  润新知