找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 30039|回复: 10

[文本处理] [已解决]批处理如何命令的结果赋值给变量并判断变量的值并处理

[复制链接]
发表于 2009-6-26 11:56:09 | 显示全部楼层 |阅读模式
例如:
把dir c:的的结果赋值给变量A,  判断A中是否有 文件1和文件2,  如果有,  则将文件1拷贝到d:\,  将文件2删除
起因是这样的:
有一个软件 PHDSERVER 运行后,共启了5个服务 RDIServer,legacserver......等,因为未知原因致使RDIServer服务经常莫名其妙的停止,解决办法就是先停一下 (phdctl stop/y),然后,重新启动(phdctl start)问题就解决了. 通过 SC query RDIServer|find "STATE" 可以得到"STATE              : 1  STOPED"的结果,如何判断其中的关键字"1"或是"STOPED",然后执行(phdctl stop/y)和(phdctl start)两条命令问题就可以解决. 请大侠们指点

[ 本帖最后由 free_ming 于 2009-6-29 09:46 编辑 ]

评分

参与人数 1PB +2 收起 理由
keen + 2 感谢主动给标题标注[已解决]字样

查看全部评分

发表于 2009-6-26 13:14:57 | 显示全部楼层
  1. (SC query RDIServer|find "STATE" |find "1")&&(phdctl stop/y & phdctl start)
复制代码
这个应该可以满足你的要求
发表于 2009-6-26 13:17:03 | 显示全部楼层
  1. (SC query RDIServer|find "STATE" |find "1")&&(net stop RDIServer & net start RDIServer)
复制代码
发表于 2009-6-26 13:56:07 | 显示全部楼层
新手尝试:
把dir c:的的结果赋值给变量A,  判断A中是否有 文件1和文件2,  如果有,  则将文件1拷贝到d:\,  将文件2删除

@echo off
dir C:\ /a-d /b > %tmp%\tmp.txt
find "文件1" %tmp%\tmp.txt 1>nul 2>nul
if errorlevel 1 goto:eof
if errorlevel 0 (
        find "文件2" %tmp%\tmp.txt 1>nul 2>nul
        if errorlevel 1 goto:eof
        if errorlevel 0 (
                copy /z c:\文件1 d:\
                del /q c:\文件2
        )
)
del %tmp%\tmp.txt
发表于 2009-6-26 14:46:55 | 显示全部楼层

回复 4楼 的帖子

代码超过一行时,请用code将代码括起来。
Q:如何用code将代码括起来?
A:http://www.bathome.net/viewthread.php?tid=404&highlight=code
 楼主| 发表于 2009-6-26 15:22:52 | 显示全部楼层
谢谢各位大侠,我测试一下
发表于 2009-6-26 16:04:28 | 显示全部楼层
还有   要查找文件的话   这个就可以  
dir /a-d /b c:\name.txt
要包含子目录的话可以这样:
dir /a-d /b /s c:\name.txt
然后后面跟个&&就可以执行找到文件后的命令了
 楼主| 发表于 2009-6-26 16:59:31 | 显示全部楼层

回复 7楼 的帖子

(SC query RDIServer|find "STATE" |find "1")&&(net stop RDIServer & net start RDIServer)命令可行.
每半小时执行一次这个批处理,该如何做呢?
 楼主| 发表于 2009-6-26 18:19:35 | 显示全部楼层

回复 3楼 的帖子

谢谢!问题已圆满解决
发表于 2009-6-26 20:32:56 | 显示全部楼层

回复 8楼 的帖子

创建一个计划任务吧
发表于 2009-6-26 21:26:01 | 显示全部楼层

回复 9楼 的帖子

问题得到解决后,请主动给标题前面添加【已解决】字样,谢谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 19:19 , Processed in 0.012226 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表