我要重命名的文件名像使用Windows批处理文件“如何TO- 重命名 -file.jpg”到“如何-TO- 重用 -file.jpg”
即我只希望在一个文件名来替换一个或两个词。
我要重命名的文件名像使用Windows批处理文件“如何TO- 重命名 -file.jpg”到“如何-TO- 重用 -file.jpg”
即我只希望在一个文件名来替换一个或两个词。
@echo off
Set "Filename=how-to-rename-file.jpg"
Set "Pattern=rename"
Set "Replace=reuse"
REM Call Rename "%Filename%" "%%Filename:%Pattern%=%Replace%%%"
Call Echo %%Filename:%Pattern%=%Replace%%%
:: Result: how-to-reuse-file.jpg
Pause&Exit
我给你的文件的一个循环其他例子:
更新:
我已经错过了在语法“事业快速打字我的最后一次编辑,这里是更正后的代码一些事情:
@echo off
Setlocal enabledelayedexpansion
Set "Pattern=rename"
Set "Replace=reuse"
For %%# in ("C:\Folder\*.jpg") Do (
Set "File=%%~nx#"
Ren "%%#" "!File:%Pattern%=%Replace%!"
)
Pause&Exit
PS:你可以点击这里了解更多关于字符串: http://ss64.com/nt/syntax-substring.html http://ss64.com/nt/syntax-replace.html
上面的代码不会重命名文件 - 路径是一个问题,源文件名不正确。
这将上的文件在当前文件夹 - 除了那些! 在名称将是一个问题。
@echo off
Setlocal enabledelayedexpansion
Set "Pattern=rename"
Set "Replace=reuse"
For %%a in (*.jpg) Do (
Set "File=%%~a"
Ren "%%a" "!File:%Pattern%=%Replace%!"
)
Pause&Exit