2012-02-09 48 views
2

我必须在Linux平台上用TCL实现ping命令响应。我需要根据服务器是否连接来获取TCL中的真或假标志。基于此,我需要做一些操作。如何获得TCL ping响应

任何一个帮助吗?

回答

3

只需exec定期ping二进制和捕获其错误代码:Unix ping返回0,1或2取决于它是否成功验证主机的可达性不是。

你probablty需要使用-n N-q选项ping其输出和错误重定向到/dev/null

有关如何通过exec调用外部程序并捕获可能的错误的示例,请参见exec手册页中的“Unix”部分。

this wiki page.

+0

不是一个真正的wiki页面,我建议,作为解决它链接到已bitrotted。 :-( – 2012-02-09 11:17:31

+0

@DonalFellows,这个链接对我来说很有用http://www.networkcomputing.com/unixworld/tutorial/11.txt.html#sect2-不是它真的很有用('exec'手册本身更彻底关于处理非零回报),但至少它能够消除有关从Tcl内运行'ping'的担忧;-) – kostix 2012-02-09 17:23:37