NAME

perlutil - Perl 配布と共にパッケージされているユーティリティ

DESCRIPTION

Perl 配布は、Perl インタプリタ自身と共に、様々なユーティリティをシステムに インストールします。 また、Perl 配布自身がインストール処理の一部として使うユーティリティも あります。 この文書はこれらのユーティリティの一覧を示し、何をするものかを説明し、 もしあれば各モジュールの文書へのポインタを提供するために存在しています。

ユーティリティの一覧

文書

perldoc

Perl 文書のメインのインターフェースは perldoc ですが、これを読めていると いうことは、おそらくこれをすでに発見していることでしょう。 perldoc は、現在のディレクトリにあるファイル、システムに インストールされた Perl モジュール、(この文書のような) 標準文書ページを 抽出およびフォーマットします。 この文書に記述されているユーティリティに関する情報を得るには、 perldoc <name> を使ってください。

pod2manpod2text

端末から実行すると、perldoc は普通は POD (Plain Old Documentation - 説明については perlpod を参照) を man ページに変換するのに pod2man を使い、それからこれを表示するために man を使います; もし man が利用できない場合は、代わりに pod2text が使われて出力は 好みのページャにパイプされます。

pod2html

上述の二つと共に、もう一つのコンバータがあります: pod2html は POD から HTML ページを生成します。

pod2usage

単にここに記述されているユーティリティの使い方が知りたいだけなら、 pod2usage は "USAGE" の節のみを抽出します; 一部のユーティリティは -help 付きで呼び出されたときに自動的に自分自身に対して pod2usage を 呼び出します。

podselect

pod2usagepodselect の特殊ケースで、POD で書かれている文書から 特定の名前の節を抽出するためのユーティリティです。 例えば、ユーティリティには "USAGE" 節がありますが、Perl モジュールには 普通 "SYNOPSIS" 節があります: podselect -s "SYNOPSIS" ... は指定された ファイルからこの節を抽出します。

podchecker

自身の文書を POD で書いたなら、podchecker ユーティリティは マークアップのエラーを探します。

splain

splainperldiag へのインターフェースです - エラーメッセージを ペースとして、あなたのために説明します。

roffitall

roffitall ユーティリティはシステムにはインストールされませんが、 Perl そースキットの pod/ ディレクトリにいます; これは 配布の全ての文書を *roff 形式に変換して、 全体のタイプセット PostScript かテキストファイルを生成します。

コンバータ

レガシープログラムを Perl に変換するのを助けるために、三つの変換フィルタを 同梱しています:

a2p

a2pawk スクリプトを Perl プログラムに変換します; 例えば、 単純な awk スクリプトである {print $2}a2p -F: すると、 以下のようなコードを元にした Perl プログラムを生成します:

    while (<>) {
        ($Fld1,$Fld2) = split(/[:\n]/, $_, -1);
        print $Fld2;
    }
s2ppsed

同様に、s2psed スクリプトを Perl プログラムに変換します。 s/foo/bar に対して s2p を実行すると、以下のようなコードを 基にした Perl プログラムを生成します:

    while (<>) {
        chomp;
        s/foo/bar/g;
        print if $printit;
    }

psed として起動すると、Perl で書かれた sed 実装のように振る舞います。

find2perl

最後に、find2perlfind コマンドを、File::Find モジュールを使った Perl の等価物に変換します。 find2perl . -user root -perm 4000 -print は、以下のような File::Find のためのコールバックサブルーチンを生成します:

    sub wanted {
        my ($dev,$ino,$mode,$nlink,$uid,$gid);
        (($dev,$ino,$mode,$nlink,$uid,$gid) = lstat($_)) &&
        $uid == $uid{'root'}) &&
        (($mode & 0777) == 04000);
        print("$name\n");
    }

他の言語を変換するためのこれらのフィルタと同様に、 pl2pm ユーティリティは古いスタイルの Perl 4 ライブラリを新しい スタイルの Perl5 モジュールに変換するのを助けます。

管理

config_data

機能とデータ設定のための Module::Build ベースの設定ファイルを使っている Perl モジュールの設定の問い合わせと変更を行う。

libnetcfg

libnet 設定の表示と変更をするには libnetcfg コマンドを実行します。

perlivp

perlivp プログラムはビルドされた Perl バージョンをテストするために Perl ソースコードをビルド時に設定します。 これは、perl やライブラリが正しくインストールされているかを検証するために、 make install (あるいはプラットフォームによる等価な手続き) の 後に実行されます。

開発

Perl プログラムの開発、特に Perl を C で拡張するのを助ける一群の ユーティリティがあります。

perlbug

perlbug は、perl インタプリタ自身や標準ライブラリモジュールのバグを 開発者に報告するための推奨の方法です; バグ報告を投稿するために使う前に、perlbug の文書全体をよく 読んでください。

perlthanks

このプログラムは perl の作者とメンテナに感謝のメッセージを送るための 簡単な方法です。 単に perlbug を別の名前でインストールしたものです。

h2ph

Perl に C ライブラリと接続するための XS システムができる前、 プログラマは C ヘッダファイルを読み込むことでライブラリの定数を 読み込んでいました。 今でも require 'syscall.ph' のようなこともできます - .ph ファイルは 対応する .h ファイルに対して h2ph を実行して作成されるべきです。 ヘッダ全体を一度に変換する方法については h2ph の文書を 参照してください。

c2phpstruct

c2phpstruct (実際には同じプログラムですがどのように 呼び出されるかで振る舞いが変わります) は、C を Perl から使うための もう一つの方法を提供します - C 構造体と共用体定義を Perl コードに 変換します。 これは最近は h2xs によって非推奨となっています。

h2xs

h2xs は C ヘッダファイルを XS モジュールに変換し、C と Perl モジュールとの 間をくっつけるコードを出来るだけ作成しようとします。 これはまた、ピュア Perl モジュールのスケルトンを作成するのにも 便利です。

enc2xs

enc2xs は Unicode Character Mapping ファイル (.ucm) か Tcl Encoding Files (.enc) のどちらかから Encode で使うための Perl エクステンションを構築します。 enc2xs は、Encode モジュールのビルドプロセス中での内部での使用の他に 独自のエンコーディングを perl に追加するのにも使えます。 XS の知識は不要です。

xsubpp

xsubpp は Perl XS コードを C コードに変換するコンパイラです。 これは典型的には ExtUtils::MakeMaker によって作成された makefile によって 実行されます。

xsubpp は、C の関数が Perl の値を操作するために必要な構造を 組み込むことで XS コードを C コードにコンパイルし、Perl がそれらの 関数にアクセスするために必要な糊コードを作成します。

prove

proveTest::Harness のテスト実行機能へのコマンドライン インターフェースです。 これは make test の代替です。

corelist

Module::CoreList へのコマンドラインインターフェースで、あるバージョンの perl にどのモジュールが出荷されたかを問い合わせます。

一般的なツール

いくつかの一般的な用途のツールが perl と共に出荷されています; ほとんどの 場合は perl 配布に含まれているモジュールに付いているものです。

piconv

piconv は Perl 版の iconv で、最近の様々な Unix 系で幅広く 利用可能な文字エンコーディングコンバータです。 このスクリプトは元々は Perl v5.8.0 の機能デモでしたが、ほぼどのような 場合でも iconv を使う場面で piconv を使えます。

ptar

ptar は tar 風のプログラムで、ピュア Perl で書かれています。

ptardiff

ptardiff は、展開されたアーカイブと展開されていないアーカイブの 差分を生成する小さいユーティリティです。 (このユーティリティは Text::Diff モジュールが正しく動作することが 必要であることに注意してください; このモジュールは perl と共に配布は されていませんが、CPAN から利用可能です。)

ptargrep

ptargrep は、tar アーカイブ内のファイルの内容にパターンマッチングを 適用するユーティリティです。

shasum

Digest::SHA モジュールと共に配布されているこのユーティリティは、 SHA チェックサムを表示または検証するために使われます。

zipdetails

zipdetails は zip ファイルの内部記録構造に関する情報を表示します。 これは zip ファイルに保管されている圧縮データの詳細について表示することは 考慮されていません。

インストール

これらのユーティリティは perl 配布に含まれていない追加の Perl モジュールの 管理を助けます。

cpan

cpan は CPAN.pm へのコマンドラインインターフェースです。 CPAN からモジュールやディストリビューションをインストールしたり、 単にこれらの情報を入手したり、その他にも多くの機能があります。 これは CPAN モジュールのコマンドラインモードと似ています。

    perl -MCPAN -e shell
instmodsh

インストールしたモジュールの検査、packlists の検証、さらに インストールしたモジュールから tarball の作成まで出来る、 ExtUtils::Installed への簡単なインターフェースです。

SEE ALSO

perldoc, pod2man, perlpod, pod2html, pod2usage, podselect, podchecker, splain, perldiag, roffitall|roffitall, a2p, s2p, find2perl, File::Find, pl2pm, perlbug, h2ph, c2ph, h2xs, enc2xs, xsubpp, cpan, instmodsh, piconv, prove, corelist, ptar, ptardiff, shasum, zipdetails