2012-04-08 4 views
1

PerlでNet :: Pingを使ってリモートホストに "CTRL + C/SIGINT"を送るには? Net::PingドキュメントがわかりますNet::Ping->execute("CTRL+C"); or Net::Ping->echo("\x03");PerlでNet :: Pingを使用して "CTRL + C/SIGINT"をリモートホストに送信するには?

+0

「Net :: Ping」にこのような機能があると思われる原因は何ですか? – geekosaur

+0

Ctrl + Cは端末から送信するものです。 'SIGINT'はあなたがプロセスグループに送るものです。 'Net :: Ping'のためにソケット経由で送ることもできません。 –

+0

100%正解!実はそれは有線です:Geo [異なるサブネット]の向こう側にあるサーバーにpingを実行すると、pingできませんが、手動の方法に従えばpingできます: "1 )サーバーへのping 2)CTRL + c 3)サーバーへのPing:私はpingできます:):最初にSIGINTがここで正確に何をしているのかを理解したいと思っています。私のPerlスクリプトでこのことを自動化してください! –

答えて

1

このモジュールは、ネットワーク上のリモートホストの到達可能性をテストするためのメソッドが含まれている私のようないくつかの機能を探しています。 pingオブジェクトは、オプションのパラメータで最初に作成され、可変数のホストが複数回pingされた後、接続が閉じられます。

ホストに関連データを送信することはできません。

あなたができるときでさえ: "相手側の"どのプロセスが "CTRL + C"のことを実行すべきですか?私のブラウザがそれに反応すると思いますか?または他のランダムなプロセスですか?

私は次のように答えています:プレーンテキスト入力として読んでください。しかし、私はあなたの意図は、 "シグナル"でいくつかのプロセスを終了することだと思う。信号はネットワークプロトコル経由で送信することはできず、1台のコンピュータ内でのみ生成され、配信されます。ギャップを埋めるために独自のプロトコルを発明しなければなりません。

申し訳ありませんが、あなたの質問は今のところ無駄です。