批量删除文件名中的括号和方括号

时间:2018-07-06 23:24:55

标签: windows

我想知道如何使用.bat文件删除括号和方括号以及文件名列表中的内容

例如:

[Tag]文件(1).mkv

File.mkv

1 个答案:

答案 0 :(得分:0)

您的问题的解决方案可以在syntax-replacement中找到。您要做的第一件事是让批处理文件将您的文件名转换为变量。从那里,您可以在set=中使用语法替换来替换/删除部分变量。

下面的脚本将删除[square brackets]及其内部的内容以及(parentheses)及其内部的内容。

请记住,此脚本在示例中演示了语法替换。它不会在前面或后面检查/测试(如果有)东西。它希望您将其格式化为 [Tag] Name(#)。ex -根据您的需要进行更改。

@echo off
@setlocal

::Input your file location bellow.
call :edit "C:\Users\%username%\Desktop\[TAG]Hello(1).jpg"
goto :EOF

:edit

::Define file as variable
set file=%~1
set start=%~1

::Define file extension as variable
set ext=%file:*.=%

::Remove right square bracket and everything before it
set square=%file:*]=%

::Remove everything after left parentheses
set efile=%square%
set endbit=%efile:*(=%
call set result=%%efile:%endbit%=%%

::Remove left parentheses
set final=%result:(=%

::Add file extension and rename
ren %start% "%final%.%ext%"

exit