批量文件替换没有扩展名的字母

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批量文件替换没有扩展名的字母相关的知识,希望对你有一定的参考价值。

我正在尝试创建简单的批处理文件,用jpg文件名替换拉丁语到西里尔语的字母,但我不知道如何阻止批处理文件更改扩展名。

@echo off
chcp 65001
Setlocal enabledelayedexpansion

Set "Pattern=p"
Set "Replace=п"

For %%# in ("*.jpg") Do (
    Set "File=%%~nx#"
    Ren "%%#" "!File:%Pattern%=%Replace%!"
)

Pause&Exit

此脚本将名称从p.jpg更改为п.jпg,这是无用的。任何建议都是受欢迎的。

谢谢

答案

明智地使用修饰符:

...
For %%# in ("*.jpg") Do (
    Set "File=%%~n#"
     ECHO Ren "%%~f#" "!File:%Pattern%=%Replace%!%%~x#"
)
...

如果输出是你需要的,删除ECHO

以上是关于批量文件替换没有扩展名的字母的主要内容,如果未能解决你的问题,请参考以下文章

如何用EXCEL里的数据对其它文件进行文件名批量的替换修改

文件如何批量添加后缀名?

linux批量修改文件后缀名

批处理系列 - 批量替换文件名

ÆØÅ 字母随机被 æÃ~Ã¥ 替换

文件批量处理百宝箱的各功能用法简介