2012-02-09 7 views
2

私は持っていますLinux platormでTCLを使ってpingコマンドの応答を実装します。サーバーが接続されているかどうかに応じて、TCLでtrueまたはfalseフラグを取得する必要があります。それに基づいて私はいくつかの操作を行う必要があります。TCLのping応答を取得する方法

いずれかのヘルプ?

答えて

3

exec普通のpingバイナリとそのエラーコードをキャッチ:Unixのpingは、ホストの到達可能性を検証することに成功したかどうかによって、0,1または2を返します。

あなたはprobablty ping-n N-qオプションを使用して/dev/nullにそのstdoutとstderrをリダイレクトする必要があります。

exec経由で外部プログラムを呼び出し、考えられるエラーをトラップする方法の例については、execマニュアルページの「Unix」セクションを参照してください。

参照のexecを使用してもthis wiki page.

+0

ないwikiページ私はそれがbitrottedたへのリンクソリューションとして、お勧めします。 :-( –

+0

@DonalFellows、このリンクは私のために働いていますhttp://www.networkcomputing.com/unixworld/tutorial/11.txt.html#sect2 - それは本当に便利です( 'exec'マニュアル自体はより徹底的です非ゼロのリターンを扱うことについて)、少なくともTclの中から 'ping'を実行することに対する恐れを取り除くことができます;-) – kostix

1

はおそらく、UNIXシステムのための十分ですが、例えば、より直接的なアプローチを使用する場合があります。周り掘り

マルチプラットフォームのスクリプトで使用するために、nsicmp TCLパッケージには、ICMPのpingのサポートを提供するようだ:本当に https://bitbucket.org/naviserver/nsicmp/overview

関連する問題