2011-11-01 121 views
0

我在WinXP上使用plink.exe在Z/OS BASH上运行一些命令。我的命令中散布着回显命令,这样我就可以解析输出并计算出什么地方。第一打左右的命令运行良好,但其中一个被截断。 例如:plink截断命令

echo :end_logdetail: 
echo Job Name : TfmMigration 
echo :jobinfo: 

会发生什么:

[email protected]:/dev> echo :end_logdetail: 
:end_logdetail: 
[email protected]:/dev> echo Job Name : Tf 
Job Name : Tf 
[email protected]:/dev> echo :jobinfo: 
:jobinfo: 

我只是检查,其中在输入文件中出现的错误,这是在正好4444个字节,线116上(所以它完成115个成功的命令在它出错之前)。我使用的命令是: 代码:

砰砰-batch -pw XXXX用户@主机< “C:\ dev的\ telnetcmd.txt”> “C:\ dev的\ telnetout.txt”

telnetcmd.txt只是一个带有“exit”命令的DOS文本文件。

任何想法为什么我的一个命令被截断这种方式?

更新:如果我通过了命令文件,-m到砰砰我不明白的问题,只有当我给它与<运营商。

+0

如果将位于第166行的命令移至文件中较早的位置,该怎么办。它是否仍然爆炸(表明命令格式不正确)。如果没有,那么〜116线的新命令就会爆炸。我回想起过去那种DOS管道和重定向功能不够强大,而且尺寸很小。很难相信这是问题,但也许你可以在查看其他问题之前反驳这个问题。祝你好运。 – shellter

+0

如果我更改了脚本,它会在不同的地方截断(我不再像原来那样拥有脚本,因为它是在飞行中生成的,我会尝试保存一个并做一些实验)。几个命令正在被截断,在某一点上回声只是被截断为“ec”,如果“rm * .bak”被截断为“rm *”,这可能是危险的!并且该脚本已生成,意味着它不是格式错误。我看过一个十六进制编辑器,并没有什么奇怪的命令。 – PhilHibbs

+0

做一个测试脚本,它只是'echo 1;回声2; echo .... n,'看看它是否在多个测试中的相同位置截断?你可以制作一个更大的文件,当你把plink移出图片时不会爆炸吗?有没有控制它可以处理的命令大小的plink选项?可能所有你想到的东西。或者在这里搜索使用'ssh'进行远程命令调用的技巧。我仍然认为DOS像管道和重定向缺乏鲁棒性。任何可以将这个问题弄清楚的XP人?尝试腻子支持组在putty.com(或其他)?祝你好运。 – shellter

回答

0

正如shellter指出的,我应该使用-m选项。这意味着(不像我使用的telnet解决方案)我的命令不会显示在输出中,shell也不会提示,但是我可以在没有这些的情况下进行管理。