我有文件名类似的图像,0034343.jpg
我想删除前导零,保留34343.jpg
为新文件名。
如何在命令提示符下执行此操作?我试过了REN 00*.jpg *.jpg
,但没有用。
小智 5
你应该能够开始:
@setlocal enableextensions enabledelayedexpansion
@echo off
for /f "delims=*" %%a IN ('dir /b 00*.jpg') do (
set file=%%a
set newfile=!file:~2!
echo move !file! !newfile!
)
endlocal
Run Code Online (Sandbox Code Playgroud)
就目前而言,这将简单地回显move
命令。echo
完成测试后删除。请记住,如果您的文件名中有空格,这可能无法按预期工作。
一点一点地进行:
setlocal
启用某些cmd.exe
扩展,这里首席正在做内部环境变量的延迟扩展的能力for
圈。for
循环运行CMD dir /b 00*.jpg
,在做每个文件一个迭代(设置%%a
到文件名)。set
简单地将文件名保存到一个变量中。第二个是从第三个字符开始的子串操作。move
会重命名文件。您可以通过help
在命令行输入命令来检查各种命令:
setlocal /?
set /?
for /?
set /?
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1953 次 |
最近记录: |