我使用plink.exe
登录到远程ssh会话,使用批处理脚本执行某些任务。在日志文件中以及在屏幕上获得这些命令的输出对我来说非常重要。
我尝试使用通常的批处理方式,即plink servername -m cmd.txt>logfile.log
方式,但问题是,它不会显示在Windows终端上,批处理脚本正在运行。
然后我找到了Plink的-sshlog
选项。这就完成了工作,也就是说,我可以在屏幕上和日志文件中获得输出,但这会导致输出如下:
00000 f90 56 4c 41 4 e 2a 2a 0 d 0a 20 65 6 e 63 61 70 73 75虚拟局域网**..请注意,如果您的数据库中包含了一个或多个数据库,那么您可以使用一个或多个数据库来访问数据库。IP地址100000FC02E37312E3139312E313435203235352E.71.191.145255.在一个实施例中,IP地址100000FC02E37312E313139312E313435203235352E.71.191.145255是一个IP地址。
我的实际输出从上面的文本中的“VLAN**.. encapsu”开始。输出有这些“00000010 74 65 72...“bla bla字符,我不想要。加上主输出(如果我以交互方式使用Plink,则会显示)是“换行”的,看起来很糟糕,这使得一般用户很难理解
是否有任何方法可以防止Plink在日志文件中输出不需要的'sshlog'字符?或者是否有任何其他方法可以在批处理脚本内的Plink/PuTTY会话中同时在屏幕上获得输出和日志失败?
我尝试了-sshlog
和-sshrawlog
,但输出相同。还尝试了-sessionlog
,根据文档,但它不工作!
我也尝试了> file.txt
,但它给了一个空文件!
预期结果:
encapsulation dot1Q 404
ip address 10.71.191.145
1条答案
按热度按时间yzuktlbb1#
在Plink中没有命令行开关来只记录可读的输出。
在运行Plink之前,您必须在Windows注册表中配置“可打印输出”日志记录。
但还有其他选择。
请参阅Displaying Windows command prompt output and redirecting it to a file。
因此,这应该可以满足您的需求:
(the
tee
是Tee-Object
cmdlet的别名)