Shell VxWorks:需要将输出重定向到null

Shell VxWorks:需要将输出重定向到null,shell,vxworks,wsh,Shell,Vxworks,Wsh,Tornado版本似乎是Tornado 2.2.2ppc 请容忍我,因为VxWorks对我来说是全新的 我有一个用'ld

Tornado版本似乎是Tornado 2.2.2ppc

请容忍我,因为VxWorks对我来说是全新的

我有一个用'ld 问题是,我希望将生成任务的模块的所有输出定向,该任务周期性地将printf的状态信息设置为null或等效值。它不是要在客户机器上运行的东西,所以一次性方法很好

背景:我想做的是,自动将telnet会话发送到box,加载并运行模块,然后在模块完成后注销。使用wscript自动化telnet,除了在脚本完成时不注销之外,它工作得非常好!至于为什么在我启动流程时无法注销,我不确定。如果删除该呼叫,telnet会话将正常打开和关闭。请查看:

-> 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