在bat中如何提取不包括文件后缀的文件名 20
假如有一个f程序可以将jpg格式的图片转化成png格式的,格式是这样的forigin.jpgoutput.png上面origin和output都是自己指定的文件名我写的b...
假如有一个 f 程序可以将jpg格式的图片转化成png格式的,
格式是这样的
f origin.jpg output.png
上面origin和output都是自己指定的文件名
我写的bat是
f "%1" %1.png
假如这个bat叫做cmd.bat吧
然后
cmd 123.jpg
会得到
123.jpg.png
我不想要原来jpg的文件后缀,请问该怎么写呢?谢谢 展开
格式是这样的
f origin.jpg output.png
上面origin和output都是自己指定的文件名
我写的bat是
f "%1" %1.png
假如这个bat叫做cmd.bat吧
然后
cmd 123.jpg
会得到
123.jpg.png
我不想要原来jpg的文件后缀,请问该怎么写呢?谢谢 展开
3个回答
展开全部
可以用这个代码处理:
@echo off
set /p str1= 请输入要替换的文件(夹)名中的字符串(空格亦适用):
set /p str2= 请输入替换后的文件(夹)名中的字符串(删除请直接回车):
for /f "delims=" %%a in ('dir /s /b ^|sort /+65535') do (
if "%%~nxa" neq "%~nx0" (
set "file=%%a"
set "name=%%~na"
set "extension=%%~xa"
call set "name=%%name:%str1%=%str2%%%"
setlocal enabledelayedexpansion
ren "!file!" "!name!!extension!" 2>nul
endlocal
)
)
exit
把这个贴到文本里面,改名为:批量修改当前文件夹下文件(夹)名中的任意字符.bat。把这个bat放入需要修改的文件夹,点击运行后,在第一行输入:.jpg,第二行直接回车,即可。
这个代码适合文件夹名或者文件名中的任何相同字符的修改,删除。同时可以同步修改子文件夹及其里面的文件哟。
希望可以帮助到你。
@echo off
set /p str1= 请输入要替换的文件(夹)名中的字符串(空格亦适用):
set /p str2= 请输入替换后的文件(夹)名中的字符串(删除请直接回车):
for /f "delims=" %%a in ('dir /s /b ^|sort /+65535') do (
if "%%~nxa" neq "%~nx0" (
set "file=%%a"
set "name=%%~na"
set "extension=%%~xa"
call set "name=%%name:%str1%=%str2%%%"
setlocal enabledelayedexpansion
ren "!file!" "!name!!extension!" 2>nul
endlocal
)
)
exit
把这个贴到文本里面,改名为:批量修改当前文件夹下文件(夹)名中的任意字符.bat。把这个bat放入需要修改的文件夹,点击运行后,在第一行输入:.jpg,第二行直接回车,即可。
这个代码适合文件夹名或者文件名中的任何相同字符的修改,删除。同时可以同步修改子文件夹及其里面的文件哟。
希望可以帮助到你。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询