Board logo

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

作者: 7016427    时间: 2015-10-6 20:13     标题: 批处理为什么执行错误并且重启电脑要误删这个文件?

  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系统,执行以上批处理失败。执行是错误提示,见截图。我把这个批处理文件放在桌面上,重启电脑时系统把我这个文件删除了。不知道为什么?
作者: 7016427    时间: 2015-10-6 20:28

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

[说明]回复 1# 7016427

我原来执行都正常,最近出现的这个问题,请高手帮我找原因解决!
作者: CrLf    时间: 2015-10-7 22:44

执行错误的问题,把 xcopy 之类的外部命令路径写死试试
开机删除的问题,与脚本本身无关,建议检查杀软查杀记录
作者: 7016427    时间: 2015-10-8 19:25     标题: RE: 批处理为什么执行错误并且重启电脑要误删这个文件?

[未解决]回复 4# CrLf
没有安装杀毒软件的
作者: /zhqsystem/zhq    时间: 2015-10-11 22:20

问题好像出在in.com,在系统环境变量中.COM具有优先调用的运行权,建议用别的后缀(如果自己会写.com文件,请忽略),在你的for中运用了执行in.com参数,当出现错误时for自动停止运行,下一个变量无法执行(如果是运行.com文件,并正确运行请忽略)
另外更改语言会造成非英文字符丢失(或识别失败)问题,
第14行语言转换错误>nul">"前加空格
作者: 7016427    时间: 2015-10-12 13:32     标题: [未解决] 批处理为什么执行错误并且重启电脑要误删这个文件?

[未解决]回复 6# /zhqsystem/zhq
第14行语改为: chcp 437>nul">"&graftabl 936>nul   ?
作者: flyinnet9    时间: 2015-10-12 14:30

这个帖子几个月了吧,

说实话,水平低,一直没搞懂13-26行的意义何在?
作者: CrLf    时间: 2015-10-12 19:04

回复 8# flyinnet9


    获取输入,并检查密码正误
作者: 7016427    时间: 2015-10-12 22:21

回复 9# CrLf

密码输入无误!




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2