名前 | 形式 | 機能説明 | 使用条件 | 環境 | 著者 | ファイル | 属性 | 関連項目 | 診断 | 注意事項 | 使用上の留意点
perl 関連のマニュアルページは、以下のように複数のマニュアルページに分割されています。
perl Perl の概要 (このマニュアルページ) perlfaq Perl に関する FAQ perltoc Perl に関するマニュアルの目次 perlbook Perl 関連書籍 perlsyn Perl の構文 perldata Perl のデータ構造体 perlop Perl の演算子と優先順位 perlsub Perl サブルーチン perlfunc Perl の組み込み関数 perlreftut Perl リファレンスの概要 perldsc Perl のデータ構造体の概要 perlrequick Perl の正規表現についてのクイックスタート perlpod Perl に関する過去のマニュアル perlstyle Perl のスタイルガイド perltrap Perl の注意点 perlrun Perl の実行とオプション perldiag Perl の診断メッセージ perllexwarn Perl の警告とその制御 perldebtut Perl のデバッグについてのチュートリアル perldebug Perl のデバッグ perlvar Perl の定義済み変数 perllol Perl のデータ構造体の配列 perlopentut Perl open() についてのチュートリアル perlretut Perl の正規表現についてのチュートリアル perlre Perl の正規表現についての詳細 perlref Perl についてのリファレンスの詳細 perlform Perl の書式 perlboot Perl OO についての初心者用チュートリアル perltoot Perl OO についてのチュートリアル (パート 1) perltootc Perl OO についてのチュートリアル (パート 2) perlobj Perl オブジェクト perlbot Perl OO を使用するコツと使用例 perltie 単純な変数によって無効になる Perl オブジェクト perlipc Perl プロセス間の通信 perlfork Perl fork() の情報 perlnumber Perl の数に関する意味論 perlthrtut Perl スレッドについてのチュートリアル perlport Perl の移植 perllocale Perl でサポートされるロケール perlunicode Perl でサポートされる Unicode perlsec Perl のセキュリティ perlmod Perl モジュール: 動作のしくみ perlmodlib Perl モジュール: 記述方法と使用方法 perlmodinstall Perl モジュール: CPAN からのインストール方法 perlnewmod Perl モジュール: 配布用の新規モジュールの作成 perlfaq1 Perl に関する一般的な質問 perlfaq2 Perl の入手と学習 perlfaq3 プログラミングツール perlfaq4 データ処理 perlfaq5 ファイルとフォーマット perlfaq6 regexes (正規表現) perlfaq7 Perl 言語について perlfaq8 システムとの相互作用 perlfaq9 ネットワーク perlcompile Perl コンパイラ群の概要 perlembed C または C++ のアプリケーションに Perl を埋め込む方法 perldebguts Perl デバッグのコツとヒント perlxstut Perl XS (チュートリアル) perlxs Perl XS アプリケーションプログラミングインタフェース perlclib 標準 C ライブラリ関数の内部代替関数 perlguts Perl を拡張するための内部関数 perlcall C から Perl を呼び出すための規約 perlutil 配布される Perl に同梱のユーティリティ perlfilter Perl ソースフィルタ perldbmfilter Perl DBM フィルタ perlapi Perl API リスト (自動生成) perlintern Perl 内部関数 (自動生成) perlapio Perl の内部入出力 abstract (抽象) インタフェース perltodo Perl に必要な作業 perlhack Perl の応用 perlhist Perl の歴史 perldelta 前バージョンからの変更点 perl5005delta Perl バージョン 5.005 に加えられた変更点 perl5004delta Perl バージョン 5.004 に加えられた変更点 perlsolaris Solaris 用の Perl についての注意事項 |
Perl のマニュアルページ全体を初めて読む場合は、上記の順序で読んでいくことをお勧めします。内容を理解しやすい順番になっています。
上記のマニュアルページは /usr/local/man/ ディレクトリにインストールされています。
上記のマニュアルページのほかにも、Perl モジュールに関するマニュアルページがあります。これらも /usr/local/lib/perl5/man ディレクトリにあります。マニュアルページの一部は標準で Perl に提供されています。ユーザーが任意でインストールするサードパーティのモジュールに関するマニュアルページも、同じディレクトリに置かれます。
Perl 関連のマニュアルページに対して catman(1M) を実行することはサポートされていません。その他の Solaris 固有の情報については、後述の「注意事項」の項を参照してください。
Perl に関する情報は、/usr/perl5/bin/perldoc スクリプトを使用して参照することもできます。
プログラム中に何か問題があるときにその場所を特定できない場合は、-w スイッチを使用してください。多くの場合に問題箇所を特定するできます。
Perl は、テキストファイルを読み取り、そこから情報を抽出して、その情報をもとにして報告を出力する言語です。また、システム管理作業を行うのにも適した言語です。Perl は、美しいこと (小規模、上品、最小限) よりも実用性 (使いやすい、効率、完全) を目指して作成されています。
Perl は (筆者の意見では) 、C、sed、awk、sh の長所を組み合わせて作成されているので、これらの言語に慣れている方には、Perl を使用することはそれほど難しくないでしょう。(csh、Pascal、BASIC-PLUS の特徴も入っているという意見もあります。) Perl の式の構文はかなりの部分で、C の式の構文に対応しています。多くの UNIX ユーティリティとは異なり、Perl にはデータのサイズに制限がありません。つまり、メモリーが十分にあれば、Perl ではファイル全体を 1 つの文字列中に入れてしまうこともできます。再帰の深さにも制限がありません。パフォーマンスの低下を防ぐために、ハッシュテーブル (連想配列と呼ばれることもある) のサイズが必要に応じて自動的に大きくなります。Perl は、高度なパターンマッチング技術を使用して、大量のデータを高速に読み取ることができます。Perl はテキストファイルを扱うことを用途として最適化されていますが、バイナリデータを扱ったり、dbm ファイルをハッシュテーブルのようにして扱うこともできます。データフローのトレース機構によって、多くの不注意によるセキュリティホールが防止されているので、Perl の setuid スクリプトは C プログラムよりも安全です。
通常なら sed、awk、または sh を使用して記述するような処理をさせたい場合に、sed、awk、sh では不可能またはパフォーマンスをもっと速くしたい、けれども C で記述するほどではないというとき、Perl を使用するのが適しています。また、sed および awk のスクリプトを Perl スクリプトに変換するプログラムもあります。
1993 年に誕生して以来 (perlhist のマニュアルページを参照)、Perl はバージョン 5 で、ほぼ全体が改訂され、次のような特長が追加されています。
perlmod、perlmodlib、および perlmodinstall のマニュアルページを参照してください。
perlembed、perlxstut、perlxs、perlcall、perlguts、および xsubpp のマニュアルページを参照してください。
perltie および AnyDBM_File のマニュアルページを参照してください。
タイプ化が可能。perlsub のマニュアルページを参照してください。
perlreftut、perlref、perldsc、および perllol のマニュアルページを参照してください。
perlobj、perltoot、および perlbot のマニュアルページを参照してください。
B および B::Bytecode のマニュアルページを参照してください。
perlthrtut および Thread のマニュアルページを参照してください。 Solaris の一部として出荷されている Perl では、スレッドサポートが有効化されていません。スレッドサポートが必要な場合は、独自のバージョンの Perl を構築およびインストールしてください (後述の「注意事項」の項を参照)。
perllocale および utf8 のマニュアルページを参照してください。
perlsub のマニュアルページを参照してください。
perlre および perlop のマニュアルページを参照してください。
対話型の Perl 環境。perldebug のマニュアルページを参照してください。
POSIX のマニュアルページを参照してください。
Perl は、ほとんどのオペレーティングシステム環境の、ほぼすべての UNIX 仕様のプラットフォーム上で利用できます。一覧については、perlport のマニュアルページの「Supported Platforms」の項を参照してください。
Solaris に含まれている Perl は、/usr/local ではなく、/usr/perl5 にインストールされます。これは、ユーザーがデフォルトの /usr/local にインストールする別バージョンの Perl と衝突しないようにするためです
追加でインストールするモジュールは、/usr/perl5/site_perl/5.6.1 ディレクトリに置かれます。/usr/perl5/vendor_perl ディレクトリには、Sun が提供するモジュールが置かれます。
perldoc および perlbug などの Perl スクリプトは、/usr/perl5/bin ディレクトリにあります。これらのスクリプトを使用する場合は、PATH 環境変数に /usr/perl5/bin を追加してください。
perlrun のマニュアルページも参照してください。
Larry Wall 他
次の属性については attributes(5) のマニュアルページを参照してください。
属性タイプ | 属性値 |
---|---|
使用条件 | SUNWpl5u SUNWpl5m |
SUNWpl5p | |
SUNWopl5u SUNWopl5m | |
SUNWopl5p | |
インタフェースの安定性 | |
· スクリプトインタフェース | 開発中 |
· XSUB インタフェース | 開発中 |
· バイナリインタフェース | 不安定 |
· ディレクトリ構成 | 開発中 |
awk から perl への変換プログラム
sed から perl への変換プログラム
Perl のホームページ
総合的な Perl アーカイブ
use warnings プラグマ (および -w スイッチ) を使用すると、診断メッセージが表示されます。
Perl の診断メッセージについての説明は、perldiag のマニュアルページを参照してください。use diagnostics プラグマを使用すると、警告メッセージおよびエラーメッセージがより詳細に出力されます。
コンパイル時のエラーメッセージには、エラー箇所の行番号、確認が必要な次のトークンまたはトークンタイプが示されます。複数の -e スイッチによって Perl に渡されるスクリプトでは、各 -e スイッチが 1 行として数えられます。
setuid スクリプトには、"Insecure dependency" などのエラーメッセージとして示されるような制限事項があります。詳細は perlsec のマニュアルページを参照してください。
次に、-w について説明します。
Solaris 9 には、Perl 5.005_03 (Solaris 8 で提供) と Perl 5.6.1 の、 2 つのバージョンの Perl が含まれています。/bin/perl は 5.6.1 のインタープリタへのリンクで、/usr/perl5/bin は /usr/perl5/5.6.1/bin ディレクトリへのリンクです。バージョン 5.005_03 は、将来の Solaris リリースでは削除される可能性があります。
Perl 5.6.1 のインタープリタは 32 ビットアプリケーションですが、Perl 5.6.1 自体は大規模ファイルの処理と64 ビットの整数の使用を想定して設計されています。詳しい構成情報を参照するには、perl -V および perlbug -dv を使用してください。
5.6.1 は、5.005_03 バージョンとバイナリ互換ではありません。主な原因は、5.6.1 に大規模ファイルと 64 ビット整数のサポートが追加されているためです。ユーザーがインストールしたモジュールが存在する場合、それが XSUB ベースのモジュールであれば再コンパイル、XSUB ベースでないモジュールであれば再インストールする必要があります。
5.005_03 を必要とするアプリケーションでは、/usr/perl5/5.005_03/bin/perl を明示的に使用してください。お勧めはしませんが、デフォルトの Perl バージョンを 5.005_03 にすることも可能です。5.005_03 をデフォルトの Perl バージョンにするには、スーパーユーザーになって以下のコマンドを実行します。
# rm /usr/bin/perl # ln -s ../perl5/5.00503/bin/perl /usr/bin/perl # rm /usr/perl5/bin # ln -s ./5.00503/bin /usr/perl5/bin # rm /usr/perl5/man # ln -s ./5.00503/man /usr/perl5/man # rm /usr/perl5/pod # ln -s ./5.00503/pod /usr/perl5/pod |
独自のバージョンの Perl を作成してインストールする場合でも、/usr/perl5 にある 5.6.1 バージョンの Perl は削除しないでください。このバージョンの Perl は、複数のシステムユーティリティで使用されています。5.005_03 バージョンを使用しない場合は、削除してもかまいません。Perl のパッケージ名は、以下のとおりです。
SUNWpl5u Perl 5.6.1 SUNWpl5p Perl 5.6.1 (POD ドキュメント) SUNWpl5m Perl 5.6.1 (マニュアルページ) SUNWopl5u Perl 5.005_03 SUNWopl5p Perl 5.005_03 (POD ドキュメント) SUNWopl5m Perl 5.005_03 (マニュアルページ) |
-w スイッチを使用することは、必須事項ではありません。
Perl は、型キャストを行う atof()や、浮動小数点を出力する sprintf() など、さまざまな処理のマシン上での定義に影響されます。
標準入出力が、特定のストリーム上の読み取りと書き込みの間にシークまたは EOF を必要とする場合、Perl がそれを実行します。ただしこれは sysread() および syswrite() には適用されません。
組み込みデータ型にサイズ制限 (メモリーサイズを除く) はありませんが、若干の制限事項があります。変数名は 251 文字未満にする必要があります。診断メッセージに示される行番号は内部で short 型整数として格納されるので、表示できる行番号は 65535 行目までです。これ以上の行番号は通常 wraparound による影響を受けます。
発見したバグについて、電子メールで <perlbug@perl.com> 宛に報告することができます。この時、使用している環境の構成情報 (Perl のソースツリーにある myconfig コマンドまたは perl -V の実行結果) も必ずお知らせください。
名前 | 形式 | 機能説明 | 使用条件 | 環境 | 著者 | ファイル | 属性 | 関連項目 | 診断 | 注意事項 | 使用上の留意点