zlmyongheng 发表于 2011-10-11 21:01:53

网站终于恢复了,好高兴啊,问一个关于au3获得命令行回显的内容

本帖最后由 zlmyongheng 于 2011-10-12 19:41 编辑

这几天不知道论坛为什么关闭,等的受不了,如果DD们,运行网站有问题的话,建议其它网站合并,不能让我们失去一个好的学习基地。
问一个问题

我现在想通过au3中执行win7中命令行命令 bcdedit得到里面的标识符后面的内容{0c0256fc7-e6a8-11e0-9177-a27067d9c976},因为每次标识符都不一样,所以如何获取,赋给au3的变量

tttbbb999 发表于 2011-10-12 20:04:28

本帖最后由 tttbbb999 于 2011-10-12 20:06 编辑

将回显以行的方式循环读取,将行类容以空格或‘@tab’分割。
if $var = "标识符" then msgbox(0,"",$var)
这个是我的回显函数,同时还存文本作日志。Func _log2($Main_path,$log2)
If Not FileExists ($Main_path&"\log" ) Then DirCreate($Main_path&"\log")
$log = FileOpen($Main_path&"\log\"&@YEAR&@MON&@MDAY&".log",1+8+128)
       FileWriteLine($log,@YEAR&"-"&@MON&"-"&@MDAY&" "&@HOUR&":"&@MIN&":"&@SEC&" MainEx "&$log2)
       FileClose($log)       
           ConsoleWrite(@YEAR&"-"&@MON&"-"&@MDAY&" "&@HOUR&":"&@MIN&":"&@SEC&" MainEx "&$log2&@crlf)
EndFunc

qqgghh1 发表于 2011-10-12 20:17:38

#include <Process.au3>
_rundos("bcdedit /参数> "&"@TempDir\log.txt");DOS回显数据保存到txt文档
FileReadLine(""&"@TempDir\log.txt",行号);读指定行数返回一个字符串
正则分析之

redapple2008 发表于 2011-10-14 15:46:08

收藏,学了,感谢!

zlmyongheng 发表于 2011-10-27 19:41:36

本帖最后由 zlmyongheng 于 2011-10-27 20:08 编辑

2楼的能否说一说代码具体如何操作,不是太懂

zlmyongheng 发表于 2011-10-27 19:56:26

3楼的可行,显示了想要的代码了

user3000 发表于 2011-10-27 19:59:27

更可靠方式是直接读回显吧?
我记得论坛的 《FAQ 大全》初学者必看 贴里有怎样直接读取DOS回显,
但要用RUN命令, _RunDos调用 RunWait, 不适合.

tsui 发表于 2011-10-27 21:03:51

本帖最后由 tsui 于 2011-10-27 21:15 编辑

#include <Constants.au3>
$run = Run(@ComSpec & ' /k ipconfig', @ScriptDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
ProcessWaitClose($run)
MsgBox(0,"",StdoutRead($run))

zch11230 发表于 2011-10-27 22:19:29

回复 8# tsui


    这觉得这个挺好 不用生成文件再来读

netegg 发表于 2011-10-28 19:34:44

StdoutRead
页: [1]
查看完整版本: 网站终于恢复了,好高兴啊,问一个关于au3获得命令行回显的内容