51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

测试开发精英班,通向高级软件测试工程师论坛测试积点免费获取渠道攻略什么样的人才需要实战项目?横扫BAT,Python全栈测试开发技能大全
【113期】:Web安全测试你来问我来答!中国软件测试行业现状调查报告新鲜出炉! 【杂志】做测试行业不偏科的尖子生! 自学软件测试那点事
查看: 2368|回复: 0

[原创] 将cmd的信息写入log日志(win7 X64电脑)

[复制链接]

该用户从未签到

发表于 2014-7-6 10:22:18 | 显示全部楼层 |阅读模式
本案例主要描述了将cmd信息写入Log日志,网络也没有这方面的资源,希望对需要的人有所帮助。其中用到的方法个人觉得不太好,但仍未找到其他捷径,如果大侠们有好的方法,希望指点赐教,O(∩_∩)O谢谢。

一.代码如下:

Const ForReading = 1, ForWriting = 2, ForAppending = 8'参数赋值(1:只读,2:只写,8:追加

Desktop.RunAnalog "Track2"'模拟录制,w7开始菜单中打开cmd.使用这种方法的原因是其他方式打开的cmd,w7 x64不能使用elnet 命令

set wh=createobject("WScript.Shell")'模拟键盘录制top信息。

wh.SendKeys"telnet 10.10.10.44"

wait 1

wh.SendKeys"{ENTER}"

wait 1

wh.SendKeys"admin"

wh.SendKeys"{ENTER}"

wait 2

wh.SendKeys"kedacomIPC"

wh.SendKeys"{ENTER}"

wait 2

wh.SendKeys"cd /"

wh.SendKeys"{ENTER}"

wait 1

wh.SendKeys"top -d 1"

wh.SendKeys"{ENTER}"

wait 2

Set Clipboard = CreateObject("Mercury.Clipboard")'创建剪切板对象

Set fso=createobject("scripting.FileSystemObject")'创建文件对象

filespec="D:\toplog.txt"'文件名和文件路径

Set toplog=fso.OpenTextFile(filespec,forAppending,true)'打开文件,对文件操作是追加。TRUE表示文件不存在时创建一个。

For i=1 to 2'for 设置X次将剪切板中的内容写入文件。利用do loop可以一直写入文件。

Clipboard.Clear

Desktop.RunAnalog "Track12"'模拟录制,将cmd中的top信息复制

toplogclip=Clipboard.GetText ()'将复制的内容放入剪切板

toplog.WriteLine(cstr(toplogclip))'将剪切板中的内容以追加方式写入文件toplog.

wait 10

Next



解析一.win7 x64不用QTP时telnet命令均可正常使用,但使用QTP sysutil.run打开的cmd始终不能使用telnet等命令。无奈,只能利用模拟录制打开cmd,解决此问题。另外,QTP正常录制识别不到cmd,故复制里面的信息也比较头疼,也采用模拟录制解决。由于模拟录制占用较多内存,故要尽量少用。用完之后,记得切换到正常模式录制。本案例中有2处使用了模拟录制.


模拟录制1:点击w7 开始菜单,输入 cmd.

生成语句 :Desktop.RunAnalog "Track2"





模拟录制2:将cmd中的top信息复制;右键全选后按下鼠标enter键表示复制。

生成语句:Desktop.RunAnalog "Track12"



解析二.复制到cmd里面的信息,那么怎么把它们写入log呢?主要利用了剪切板对象clipboard.先把复制的信息存入剪切板,再将剪切板的信息写入log文件.



具体实现:

1.  (1)创建剪切板对象

Set Clipboard = CreateObject("Mercury.Clipboard")

(2)清除信息

Clipboard.Clear

(3)将复制的信息存入剪切板

toplogclip=Clipboard.GetText ()

2.  (1)参数赋值(1:只读,2:只写,8:追加)

Const ForReading = 1, ForWriting = 2, ForAppending = 8

(2)创建文件对象

Set fso=createobject("scripting.FileSystemObject")

(3)设置文件名和路径

filespec="D:\toplog.txt"

(4)打开文件,TRUE表示若文件不存在则创建该文件

Set toplog=fso.OpenTextFile(filespec,forAppending,true)'

(5)将剪切板中的内容以追加方式写入文件toplog

toplog.WriteLine(cstr(toplogclip))'
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2020-7-8 00:13 , Processed in 0.064175 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2020 Comsenz Inc.

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