getprotoent

プロトコル情報を走査する

構文

解説

getprotoent はシステムのプロトコル情報(Linux では主に /etc/protocols に登録されている情報)にアクセスし、 プロトコル情報を返します。引数はありません。

#    0      1         2
my ( $name, $aliases, $proto ) = getprotoent;
No. 変数 意味 実例
0 $name プロトコル名 icmp
1 $aliases エイリアス (別名) ICMP
2 $proto プロトコル番号 1

getprotoent はイテレーターとして機能しますので、一般的には while ループで使われます。 以下のサンプルコードは、取得したプロトコル名を一覧出力します。

while ( my @info = getprotoent ) {
    print $info[0], "\n";
}

getprotoent はスカラーコンテキストであれば、最初の項目であるプロトコル名のみを返します。 そのため、前述のサンプルコードは次のように書き換えても同じです。

while ( my $name = getprotoent ) {
    print $name, "\n";
}

なお、getprotoent は Windows では機能しませんので注意してください。