我想知道如何使用.bat文件删除括号和方括号以及文件名列表中的内容
例如:
[Tag]文件(1).mkv
到
File.mkv
答案 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