Shell VxWorks:需要将输出重定向到null
Tornado版本似乎是Tornado 2.2.2ppc 请容忍我,因为VxWorks对我来说是全新的 我有一个用'ldShell VxWorks:需要将输出重定向到null,shell,vxworks,wsh,Shell,Vxworks,Wsh,Tornado版本似乎是Tornado 2.2.2ppc 请容忍我,因为VxWorks对我来说是全新的 我有一个用'ld
-> version
VxWorks (for Company MMC-C PPC82XX F2000) version 5.5.2.
Kernel: WIND version 2.6.
如果我在Send Stuff to done部分中注释掉最后三行,那么脚本工作正常。有了这些行,exit和quit命令似乎就不会执行了。我甚至看不到文本在telnet窗口中的回声。我有一些疯狂的理论来解释为什么,但我想先隐藏模块的输出,看看是否可以修复它
当然,我总是乐于接受新想法
更新:
我在模块中添加了一个选项,不打印状态消息。。因此,我可以通过使用0或1作为参数调用我的方法来切换它。帮助我创建了一个用于打印的宏,尽管我使用了由方法的输入变量在运行时设置的静态int,而不是另一个必须在编译时设置的宏,所以它非常灵活
但是,这没有帮助
好的,更多的测试显示,大约5分钟似乎是wscript睡眠的最大时间,并且仍然能够向预期的应用程序发送击键。我不知道为什么谷歌搜索没有显示出任何限制,但是,你看
不过,我学到的是,我可以在启动模块后简单地退出,并在调用批处理文件中等待。因此,它等待、等待、等待更多的延迟完全是任意的,并且是根据对过去运行的观察来选择的-很差,我知道,但这是一个开发脚本,每年运行大约2次,这已经足够好了,见鬼,这已经是对当前流程的重大改进,然后继续执行下一个任务。似乎是在耍花招
但仍然感到困惑的是,为什么wscript在大约5分钟后不能正常工作
:: :::::::::::::::::::::::::::::::::::::::::::::
:: http://www.antionline.com/showthread.php?264924-Scripting-windows-Telnet
:: temp_SendKeys.VBS will contain the "commands"
ECHO.set handler=WScript.CreateObject("WScript.Shell") >temp_SendKeys.VBS
ECHO.WScript.echo now() >>temp_SendKeys.VBS
ECHO.handler.run("Telnet") >>temp_SendKeys.VBS
ECHO.WScript.sleep 1500 >>temp_SendKeys.VBS
:: :::::::::::::::::::::::::::::::::::::::::::::
:: Open Connection To Telnet Host
ECHO.handler.SendKeys "open %Server% 2002~" >>temp_SendKeys.VBS
ECHO.WScript.sleep 1500 >>temp_SendKeys.VBS
:: :::::::::::::::::::::::::::::::::::::::::::::
:: Send Login Name
ECHO.handler.SendKeys "system~" >>temp_SendKeys.VBS
ECHO.WScript.sleep 1500 >>temp_SendKeys.VBS
:: Send Password
ECHO.handler.SendKeys "default~" >>temp_SendKeys.VBS
ECHO.WScript.sleep 2000 >>temp_SendKeys.VBS
:: :::::::::::::::::::::::::::::::::::::::::::::
:: Send Stuff to be done
ECHO.handler.SendKeys "unld ""MyModule.out""~" >>temp_SendKeys.VBS
ECHO.WScript.sleep 1000 >>temp_SendKeys.VBS
ECHO.handler.SendKeys "ld < MyModule.out~" >>temp_SendKeys.VBS
ECHO.WScript.sleep 1000 >>temp_SendKeys.VBS
ECHO.handler.SendKeys "xdelete ""*data.txt""~" >>temp_SendKeys.VBS
ECHO.WScript.sleep 3000 >>temp_SendKeys.VBS
ECHO.handler.SendKeys "myModule()~" >>temp_SendKeys.VBS
ECHO.WScript.echo "sleeping 1080000ms (18min)" >>temp_SendKeys.VBS
ECHO.WScript.sleep 1080000 >>temp_SendKeys.VBS
:: :::::::::::::::::::::::::::::::::::::::::::::
:: Logout
ECHO.handler.SendKeys "~~exit~" >>temp_SendKeys.VBS
ECHO.WScript.sleep 1000 >>temp_SendKeys.VBS
ECHO.handler.SendKeys "quit~" >>temp_SendKeys.VBS
ECHO.WScript.sleep 1000 >>temp_SendKeys.VBS
ECHO.WScript.echo now() >>temp_SendKeys.VBS
:: Run the script
cscript//nologo temp_SendKeys.VBS
pause