标题: [文本处理] [已解决]echo生成的电源管理的批处理无法执行? [打印本页]
作者: pdp320921 时间: 2011-6-10 12:30 标题: [已解决]echo生成的电源管理的批处理无法执行?
- echo @echo off>56.bat
- echo setlocal EnableDelayedExpansion>>56.bat
- echo for /f "tokens=2 delims=()" %%%%i in ('powercfg -getactivescheme') do ( >>56.bat
- echo set a=%%%%i >>56.bat
- echo if "!a!" EQU "Balanced" powercfg -setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c >>56.bat
- echo if "!a!" EQU "High performance" powercfg -setactive a1841308-3541-4fab-bc81-f71556f20b4a>>56.bat
- echo if "!a!" EQU "Power saver" goto end)>>56.bat
- echo :end>>56.bat
复制代码
上述语句得到的56.bat- @echo off
- setlocal EnableDelayedExpansion
- for /f "tokens=2 delims=()" %%i in ('powercfg -getactivescheme') do (
- set a=%%i
- if "!a!" EQU "Balanced" powercfg -setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
- if "!a!" EQU "High performance" powercfg -setactive a1841308-3541-4fab-bc81-f71556f20b4a
- if "!a!" EQU "Power saver" goto end)
- :end
复制代码
为什么不能执行?不知到问题出在哪,求高手指教~~
ps:单独新建批处理可以正确执行~
作者: pdp320921 时间: 2011-6-10 16:52
1# pdp320921
发现问题主要出现在- echo if "!a!" EQU "Balanced" powercfg -setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c >>56.bat
复制代码
好像echo 后面接if 语句生成的文本语句不能够正确执行~
作者: pdp320921 时间: 2011-6-11 14:22
2# pdp320921
问题已解决~
作者: CrLf 时间: 2011-6-11 14:25
3# pdp320921
能否把出错原因贴出来呢?让大家学习下
作者: Batcher 时间: 2011-6-11 15:05
2# pdp320921
是因为行尾多了个空格?
作者: pdp320921 时间: 2011-6-12 22:34
5# Batcher
楼上正解!
作者: Batcher 时间: 2011-6-13 01:13
- >>56.bat echo if "!a!" EQU "Balanced" powercfg -setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |