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


请参考Q-04把bat文件保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
  1. @echo off
  2. REM 设置待排除的目录(注意以\结尾)
  3. set "ExFolder=C:\Users\Administrator\Desktop\"
  4. for %%a in (C D E) do (
  5.     if exist %%a:\ (
  6.         echo 正在搜索%%a:\
  7.         pushd %%a:\
  8.         for /f "delims=" %%b in ('dir /b /s /a-d *.pdf *.doc *.xls 2^>nul ^| find /v /i "%ExFolder%"') do (
  9.             REM 如果显示的结果没有问题,把下面的echo去掉再次执行即可删除文件
  10.             echo del /f /q "%%b"
  11.         )
  12.         popd
  13.     )
  14. )
  15. pause
复制代码
1

评分人数

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 2# 77七


    如果待排除的文件较多,可能超出变量上限。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 10# 7758234


方法1.bat
  1. @echo off
  2. REM 设置待排除的目录(注意以\结尾)
  3. set "ExFolder1=C:\Users\Administrator\Desktop\"
  4. set "ExFolder2=C:\Program Files\"
  5. for %%a in (C D E) do (
  6.     if exist %%a:\ (
  7.         echo 正在搜索%%a:\
  8.         pushd %%a:\
  9.         for /f "delims=" %%b in ('dir /b /s /a-d *.pdf *.doc *.xls 2^>nul ^| find /v /i "%ExFolder1%" ^| find /v /i "%ExFolder2%" ') do (
  10.             REM 如果显示的结果没有问题,把下面的echo去掉再次执行即可删除文件
  11.             echo del /f /q "%%b"
  12.         )
  13.         popd
  14.     )
  15. )
  16. pause
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 18# 7758234


备份.bat
  1. @echo off
  2. REM 设置待排除的目录(注意以\结尾)
  3. set "ExFolder1=C:\Users\Administrator\Desktop\"
  4. set "ExFolder2=C:\Program Files\"
  5. REM 导出的文件列表
  6. set "OutFile=%~dp0备份.csv"
  7. REM 设置新的临时后缀名
  8. set "NewExt=ttttt"
  9. >"%OutFile%" echo OldName,NewName
  10. for %%a in (C D E) do (
  11.     if exist %%a:\ (
  12.         echo 正在搜索%%a:\
  13.         pushd %%a:\
  14.         for /f "delims=" %%b in ('dir /b /s /a-d *.pdf *.doc *.xls 2^>nul ^| find /v /i "%ExFolder1%" ^| find /v /i "%ExFolder2%" ') do (
  15.             echo 正在查找 %%b
  16.             >>"%OutFile%" echo "%%b","%%b.%NewExt%"
  17.             REM 如果显示的结果没有问题,把下面的echo去掉再次执行即可重命名文件
  18.             echo ren "%%b","%%~nxb.%NewExt%"
  19.         )
  20.         popd
  21.     )
  22. )
  23. pause
复制代码
恢复.bat
  1. @echo off
  2. set "InFile=%~dp0备份.csv"
  3. for /f skip^=1^ tokens^=3^ delims^=^" %%a in ('type "%InFile%"') do (
  4.     REM 如果显示的结果没有问题,把下面的echo去掉再次执行即可重命名文件
  5.     echo ren "%%a" "%%~na"
  6. )
  7. pause
复制代码
1

评分人数

    • 7758234: 感谢给帖子标题标注[已解决]字样技术 + 1
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 20# 7758234


19楼代码已经更新,可以处理同一个文件夹下包含:
测试.doc
测试.pdf
测试.xls
这种情况

恢复的时候,就是要读取csv文件的NewName和OldName进行重命名。直接搜索.ttttt是不好的方法。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 22# 7758234


    请参考19楼:恢复.bat
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表