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

[文本处理] 批处理为什么执行错误并且重启电脑要误删这个文件?

  1. @echo off
  2. echo.
  3. set "spath=e:\视频\ZR"
  4. set "spatw=e:\视频\WQ"
  5. set "bakpath=f:\备份视频\ZR"
  6. set "bakpatw=f:\备份视频\WQ"
  7. set /a "y=%date:~,4%,m=1%date:~5,2%-2"
  8. if %m% lss 101 set /a y-=1,m+=12
  9. if not exist "%spath%\%y%\%m:~-2%\" (echo %y%年%m:~-2%月,视频已转! 按任意键退出 . . .
  10. echo.
  11. pause>nul&exit
  12. )
  13. @echo off&setlocal EnableDelayedExpansion
  14. chcp 437>nul&graftabl 936>nul
  15. echo hP1X500P[PZBBBfh#b##fXf-V@`$fPf]f3/f1/5++u5x>in.com
  16. echo.
  17. set /p pw=请输入密码: <nul
  18. for /f "tokens=*" %%i in ('in.com') do set pw=%%i
  19. del in.com
  20. if not "%pw%"=="jy" (
  21. echo 密码错误 ^^!
  22. pause>nul&exit
  23. )
  24. echo.
  25.   ) else (
  26. cls
  27. rd /q /s %bakpath%&md %bakpath%
  28. rd /q /s %bakpatw%&md %bakpatw%
  29. xcopy /e /y "%spath%\%y%\%m:~-2%\*.*" "%bakpath%\%y%\%m:~-2%\"
  30. echo.
  31. xcopy /e /y "%spatw%\%y%\%m:~-2%\*.*" "%bakpatw%\%y%\%m:~-2%\"
  32. rd /q /s "%spath%\%y%\%m:~-2%\"
  33. rd /q /s "%spatw%\%y%\%m:~-2%\"
  34.   )
  35. echo.
  36. echo %y%年%m:~-2%月%,执行完毕^^!
  37. echo.
  38. pause&exit /b
复制代码
我是win7系统,执行以上批处理失败。执行是错误提示,见截图。我把这个批处理文件放在桌面上,重启电脑时系统把我这个文件删除了。不知道为什么?

回复 9# CrLf

密码输入无误!

TOP

回复 8# flyinnet9


    获取输入,并检查密码正误

TOP

这个帖子几个月了吧,

说实话,水平低,一直没搞懂13-26行的意义何在?

TOP

[未解决] 批处理为什么执行错误并且重启电脑要误删这个文件?

[未解决]回复 6# /zhqsystem/zhq
第14行语改为: chcp 437>nul">"&graftabl 936>nul   ?

TOP

问题好像出在in.com,在系统环境变量中.COM具有优先调用的运行权,建议用别的后缀(如果自己会写.com文件,请忽略),在你的for中运用了执行in.com参数,当出现错误时for自动停止运行,下一个变量无法执行(如果是运行.com文件,并正确运行请忽略)
另外更改语言会造成非英文字符丢失(或识别失败)问题,
第14行语言转换错误>nul">"前加空格

TOP

RE: 批处理为什么执行错误并且重启电脑要误删这个文件?

[未解决]回复 4# CrLf
没有安装杀毒软件的

TOP

执行错误的问题,把 xcopy 之类的外部命令路径写死试试
开机删除的问题,与脚本本身无关,建议检查杀软查杀记录

TOP

[说明]回复 1# 7016427

我原来执行都正常,最近出现的这个问题,请高手帮我找原因解决!

TOP

[补充]回复 1# 7016427
执行时错误提示:
C:\windows\system32\cmd.exe
NTVDM has encountered a System Error
指定的服务不存在
choose 'close' to terminate the application.

TOP

返回列表