[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 【已解决】求助批处理删除特殊字符

本帖最后由 lj670 于 2024-12-17 00:50 编辑

mp4文件名中包含有许多特殊字符☀ ✦ ♬ ♭ ♩等等需要删除掉,用删除一般字符的脚本无法删除这些,求助各位大佬,谢谢!🙏🙏
例如:
高清✦ 难以置信的美丽.mp4
高清难☀☀以置信的美丽.mp4
高清难以置信的♬ ♭美丽.mp4
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 77七 于 2024-12-16 19:21 编辑
  1. @echo off
  2. rem 保存为utf-8编码
  3. chcp 65001 >nul
  4. set str="☀" "✦" "♬" "♭" "♩"
  5. for /f "delims=" %%i in ('dir /b /a-d *.mp4') do (
  6. set n=%%~ni
  7. if defined n (
  8. setlocal enabledelayedexpansion
  9. set _n=!n!
  10. for %%a in (%str%) do (
  11. set _n=!_n:%%~a=!
  12. )
  13. ren "!n!%%~xi" "!_n!%%~xi"
  14. endlocal
  15. )
  16. )
  17. pause
复制代码
1

评分人数

    • lj670: 运行完美技术 + 1
bat小白,请多指教!谢谢!

TOP

不知行否
  1. @echo off&chcp 936
  2. for %%a in (*.mp4) do (
  3. set old=%%a
  4. for /f "delims=" %%b in ('echo "%%a"') do (
  5. set "new=%%~b"
  6. setlocal enabledelayedexpansion
  7. echo rename "!old!" to "!new:?=!"
  8. rename "!old!" "!new:?=!"
  9. endlocal
  10. )
  11. )
  12. pause&exit/b
复制代码
1

评分人数

TOP

回复 1# lj670

  1. @echo off & chcp 936>nul &setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in ('dir /b/a-d *.mp4') do set "a=%%a" &ren "%%a" "!a:?=!"
  3. pause&exit/b
复制代码
1

评分人数

    • lj670: 速度非常快技术 + 1

TOP

回复 2# 77七


    运行完美,非常好!谢谢🙏🙏

TOP

回复 3# Five66

非常行,运行完美,不用指定,去除所有特殊字符,谢谢🙏🙏🙏

TOP

回复 4# aloha20200628

运行完美,速度非常快,处理4150个视频用时65秒,谢谢🙏🙏

TOP

返回列表