[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @echo off
  2. :start
  3. set /p str= 要删除的字符串:
  4. echo.
  5. for /f "delims=" %%a in ('dir /s /b') do (
  6. if "%%~nxa" neq "%~nx0" (
  7. set "file=%%a"
  8. set "name=%%~na"
  9. set "extension=%%~xa"
  10. call set "name=%%name:%str%=%%"
  11. setlocal enabledelayedexpansion
  12. ren "!file!" "!name!!extension!" 2>nul
  13. endlocal
  14. )
  15. )
  16. goto start
复制代码
1

评分人数

    • brim: 亲测可用技术 + 1

TOP

本帖最后由 yhcfsr 于 2017-11-23 14:37 编辑

回复 3# bathelp
  1. @echo off
  2. set str1=P
  3. set str2=注
  4. for /f "delims=" %%a in ('dir /s /b') do (
  5. if "%%~nxa" neq "%~nx0" (
  6. set "file=%%a"
  7. set "name=%%~na"
  8. set "extension=%%~xa"
  9. CALL set "name=%%name:%str1%=%%"
  10. CALL set "name=%%name:%str2%=%%"
  11. setlocal enabledelayedexpansion
  12. ren "!file!" "!name!!extension!" 2>nul
  13. endlocal
  14. )
  15. )
复制代码
用是可以用,不过在代码中使用汉字总有些问题,比如窗口要好几秒才能关闭,批处理文档格式要另存为ANSI。

TOP

本帖最后由 yhcfsr 于 2017-11-23 20:35 编辑

哦,看错,这个只是对批处理所在目录及子目录下所有TXT删除你指定的字符
至于你说的删除备份,说明太简单,不清楚你的具体意图,不好写
  1. @echo off
  2. set str1=P
  3. set str2=注
  4. for /f "delims=" %%a in ('dir /a:-d /s /b') do (
  5. if "%%~nxa" neq "%~nx0" (
  6. set "file=%%a"
  7. set "name=%%~na"
  8. set "extension=%%~xa"
  9. CALL set "name=%%name:%str1%=%%"
  10. CALL set "name=%%name:%str2%=%%"
  11. setlocal enabledelayedexpansion
  12. ren "!file!" "!name!!extension!" 2>nul
  13. endlocal
  14. )
  15. )
  16. exit
复制代码
回复 6# bathelp

TOP

本帖最后由 yhcfsr 于 2017-11-23 22:55 编辑
  1. @echo off
  2. set str1=P
  3. set str2=注
  4. for /f "delims=" %%a in ('dir /a:-d /s /b') do (
  5. if "%%~nxa" neq "%~nx0" (
  6. set "file=%%a"
  7. set "name=%%~na"
  8. set "extension=%%~xa"
  9. CALL set "name=%%name:%str1%=%%"
  10. CALL set "name=%%name:%str2%=%%"
  11. setlocal enabledelayedexpansion
  12. ren "!file!" "!name!!extension!" 2>nul
  13. endlocal
  14. )
  15. )
  16. for  /f %%i in ('dir /a-d /s /b *备份*.txt') do del %%i
  17. exit
复制代码
其实就在最后加一句,记得有这样有汉字的要另存ANSI编码
这个脚本可以修改当前目录以及子目录的相关文件
1

评分人数

    • bathelp: 非常感谢老师的帮忙技术 + 1

TOP

返回列表