Perl入門ゼミ

テキスト処理、Linuxサーバー管理、Web開発ならPerl
  1. Perl
  2. モジュール
  3. here

Net::Ping::External - OSに依存しない形でpingコマンドを実行する

Net::Ping::ExternalモジュールはOSに依存しない形でpingコマンドを実行するためのモジュールです。

# モジュールの読み込みと関数のインポート
use Net::Ping::External 'ping';

pingコマンドを実行するにはping関数を使用します。hostにはホスト名(ドメイン名)のほかIPアドレスを指定することもできます。

# pingコマンドを実行
my $alive = ping(host => 'localhost');

タイムアウト値(秒)を指定することもできます。

# タイムアウト値の指定
my $alive = ping(host => 'localhost', timeout => 3);

Net::Ping::Externalに関するFAQ

Q. Net::Ping::ExternalのNet::Pingモジュールに対する利点は何ですか。

A. Net::Pingモジュールのnewの引数にicmpを指定すれば、pingコマンドと同じようにICMPを利用してリモートホストの生存確認を行うことができます。けれども、これにはroot権限が必要になります。これが不便に感じる場合はNet::Ping::Externalモジュールを使用するのがよいと思います。

  • Perlとはテキスト処理の記述性とパフォーマンスに優れ、正規表現が言語に組み込まれているプログラミング言語です。
  • Linuxサーバーでのフィルタリングプログラム、複数行の文字列を処理、ファイル内容の検索・置換などが得意
  • Perlはgitopensslなど広く普及したUnix/Linuxミドルウェアの補助ツールとして採用実績あり。後方互換性とポータビリティの高さがひとつの理由と推測。
  • 大量のテキストを扱うWeb開発も得意。ロングテールSEOを意識したWebサイト、アドテクやソーシャルゲームでの50ms以内のJSONの生成など。