ユーザーコマンド perl(1)
【名前】
perl - 抽出および出力を行う言語 (Practical Extraction and
Report Language)
【形式】
perl [-sTuU] [-hv] [-V[:configvar]] [-cw] [-d[:debugger]]
[-D[number/list]] [-pna] [-Fpattern] [-l[octal]] [-0[octal]]
[-Idir] [-m[-]module] [-M[-]'module...'] [-P] [-S] [-x[dir]]
[-i[extension]] [-e 'command'] [--] [programfile] [argu-
ment] ...
【説明】
調べやすくするために、Perl のマニュアルは以下のセクション に
分割されています。
概要
perl Perl 概要 (このセクション)
perlintro Perl 初心者のための概要
perltoc 関連マニュアルの目次
チュートリアル
【】
perlreftut Perl リファレンスの概要
perldsc データ構造体の概要
perllol データ構造体の配列
perlrequick Perl 正規表現についてのクイックスタート
perlretut Perl 正規表現についてのチュートリアル
perlboot Perl OO についての初心者のためのチュートリアル
perltoot Perl OO についてのチュートリアル (パート1)
perltooc Perl OO についてのチュートリアル (パート2)
perlbot Perl OO を使用するコツと使用例
perlstyle Perl スタイルガイド
perlcheat Perl 虎の巻
perltrap Perl 注意点
perldebtut Perl デバッグについてのチュートリアル
perlfaq Perl FAQ
perlfaq1 Perl についての一般的な質問
perlfaq2 Perl の入手と学習
perlfaq3 プログラミングツール
perlfaq4 データ処理
perlfaq5 ファイルとフォーマット
perlfaq6 regexes (正規表現)
perlfaq7 Perl 言語について
perlfaq8 システムとの相互作用
perlfaq9 ネットワーク
リファレンスマニュアル
perlsyn Perl 構文
perldata Perl データ構造体
perlop Perl 演算子と優先順位
perlsub Perl サブルーチン
perlfunc Perl 組み込み関数
perlopentut Perl open() についてのチュートリアル
perlpacktut Perl pack() と unpack() についてのチュートリアル
perlpod Perl 旧関連マニュアル
perlpodspec Perl 旧関連マニュアルの書式の仕様
perlrun Perl 実行とオプション
perldiag Perl 診断メッセージ
perllexwarn Perl 警告とその制御
perldebug Perl デバッグ
perlvar Perl 定義済み変数
perlre Perl 正規表現の詳細
perlreref Perl 正規表現についてのクイックリファレンス
perlref Perl リファレンスの詳細
perlform Perl 書式
perlobj Perl オブジェクト
perltie Perl 単純な変数によって無効になるオブジェクト
perldbmfilter Perl DBM フィルタ
perlipc Perl プロセス間の通信
perlfork Perl fork() の情報
perlnumber Perl 数に関する意味論
perlthrtut Perl スレッドについてのチュートリアル Perl 旧スレッドについてのチュ
ートリアル
perlport Perl 移植
perllocale Perl ロケールのサポート
perluniintro Perl Unicode の概要
perlunicode Perl Unicode のサポート
perlebcdic Perl EBCDIC プラットフォームにおける実行について
perlsec Perl セキュリティ
perlmod Perl モジュール: 動作のしくみ
perlmodlib Perl モジュール: 記述方法と使用方法
perlmodstyle Perl モジュール: スタイルによるモジュールの記述方法
perlmodinstall Perl モジュール: CPAN からのインストール方法
perlnewmod Perl モジュール: 配布用の新規モジュールの作成
perlutil Perl ディストリビューションに同梱のユーティリティ
perlcompile Perl コンパイラ群の概要
perlfilter Perl ソースフィルタ
内部関数と C 言語インタフェース
perlembed Perl C または C++ のアプリケーションに Perl を埋め込む方法
perldebguts Perl デバッグのコツとヒント
perlxstut Perl XS (チュートリアル)
perlxs Perl XS アプリケーションプログラミングインタフェース
perlclib 標準 C ライブラリ関数の内部代替関数
perlguts Perl を拡張するための内部関数
perlcall Perl C から呼び出すための規約
perlapi Perl API リスト (自動生成)
perlintern Perl 内部関数 (自動生成)
perliol Perl レイヤーにおける入出力の Perl 実装に対する C API
perlapio Perl 内部 IO 抽象化インタフェース
perlhack Perl 応用
その他
perlbook Perl 関連書籍
perltodo Perl 必要な作業
perldoc マニュアルの検索 (Pod 形式)
perlhist Perl 歴史
perldelta Perl 前バージョンからの変更点
perl583delta Perl バージョン 5.8.3 に加えられた変更点
perl582delta Perl バージョン 5.8.2 に加えられた変更点
perl581delta Perl バージョン 5.8.1 に加えられた変更点
perl58delta Perl バージョン 5.8.0 に加えられた変更点
perl573delta Perl バージョン 5.7.3 に加えられた変更点
perl572delta Perl バージョン 5.7.2 に加えられた変更点
perl571delta Perl バージョン 5.7.1 に加えられた変更点
perl570delta Perl バージョン 5.7.0 に加えられた変更点
perl561delta Perl バージョン 5.6.1 に加えられた変更点
perl56delta Perl バージョン 5.6.0 に加えられた変更点
perl5005delta Perl バージョン5.005 に加えられた変更点
perl5004delta Perl バージョン5.004 に加えられた変更点
perlartistic Perl Artistic License
perlgpl GNU General Public License
言語固有
perlcn Perl 簡体字用 (EUC-CN)
perljp perljpPerl 日本語用 (EUC-JP)
perlko perlkoPerl 韓国語用 (EUC-KR)
perltw perltwPerl 繁体字用 (Big5)
プラットフォーム固有
perlsolaris Perl Solaris についての注意事項
【プラットフォーム固有】
初めて Perl を学習する場合は、perlintro から始めるべきです。
このマニュアルは、初心者のための概要であり、残りの Perl 拡張
マニュアルに進むための背景情報も提供します。調べやすくするた
め、 Perl のマニュアルはいくつかのセクションに分割されていま
す。
上記のマニュアルページは /usr/perl5/man/ ディレクトリにイ ン
ストールされています。
上記のマニュアルページのほかにも、Perl モジュールに関する マ
ニュアルページがあります。これらも /usr/perl5/man ディレクト
リにあります。マニュアルページの一部は標準で Perl に提供され
ています。ユーザーが任意でインストールするサードパーティのモ
ジュールに関するマニュアルページも、同じディレクトリに置かれ
ます。
Perl のマニュアルを表示するには、man(1) の MANPATH 環境変 数
に /usr/perl5/man を含めます。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 で、ほぼ全体が改訂され、次のような特長が
追加されています。
o 多数のモジュールを使用した、モジュール性と再利用性
perlmod、perlmodlib、および perlmodinstall のマニュア ル
ページを参照してください。
o 組み込みと拡張性
perlembed、perlxstut、perlxs、perlcall、perlguts、および
xsubpp のマニュアルページを参照してください。
o 独自のマジック変数の活用 (複数の DBM同時実装を含む)
perltie および AnyDBM_File のマニュアルページを参照し て
ください。
o サブルーチンのオーバーライド、自動ロード、プロト
タイプ化が可能。perlsub のマニュアルページを参照してくだ
さい。
o 任意の多重データ構造体および匿名の関数
perlreftut、perlref、perldsc、および perllol のマニュ ア
ルページを参照してください。
o オブジェクト指向プログラミング
perlobj、perltoot、および perlbot のマニュアルページを参
照してください。
o C コードまたは Perl バイトコードへのコンパイル
B および B::Bytecode のマニュアルページを参照してくだ さ
い。
o 軽量プロセス (スレッド) のサポート
perlthrtut および Thread のマニュアルページを参照して く
ださい。Solaris の一部として出荷されている Perl では、ス
レッドサポートが有効化されていません。スレッドサポートが
必要な場合は、独自のバージョンの Perl を構築およびインス
トールしてください (後述の「注意事項」の項を参照)。
o Unicode、国際化のサポート
perllocale および utf8 のマニュアルページを参照してく だ
さい。
o 字句のスコープ
perlsub のマニュアルページを参照してください。
o 正規表現の拡張
perlre および perlop のマニュアルページを参照してくだ さ
い。
o 統合エディタの採用による、デバッガの機能拡張および
対話型の Perl 環 境。 perldebtut、 perldebug お よ び
perldebguts のマニュアルページを参照してください。
o POSIX 1003.1 準拠
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 他
これから Perl をアプリケーションに使用しようとしているほかの
人たちのために、自分の Perl に関する成功事例や経験談を提供し
ていただける方、あるいは、Larry を初めとする Perl 開発者たち
に 簡 単 なお礼を述べたい方は、perl-thanks@perl.org まで電子
メールを送信してください。
【ファイル】
"@INC" Perl ライブラリの場所
【属性】
次の属性については attributes(5) のマニュアルページを参照 し
てください。
____________________________________________________________
属性タイプ 属性値
____________________________________________________________
使用条件 SUNWperl584core,
SUNWperl584usr,
SUNWperl584man, SUNWpl5u,
SUNWpl5v SUNWpl5p, SUNWpl5m
以下を参照。
____________________________________________________________
インタフェースの安定性 以下を参照。
____________________________________________________________
| | |
【関連項目】 | |
| a2p awk から perl への変換プログラム |
| | |
| | |
| | |
| s2p sed から perl への変換プログラム |
| | |
| | |
| | |
| http://www.perl.com/ Perl|のホームページ |
| | |
| | |
| | |
| http://www.perl.com/CPAN総合的な Perl アーカイブ |
| | |
| | |
| | |
| http://www.perl.org Perl|Mongers (Perl ユーザーグループ)
| | |
| | |
| | |
【診断】 | |
| use warnings プラグマ (および -w スイッチ) を使用すると、 |
| 断メッセージが表示されます。| |
| | |
| Perl の診断メッセージについての説明は、perldiag のマニュア|
| ページを参照してください。use diagnostics プラグマを使用す|
| と、警告メッセージおよびエラーメッセージがより詳細に出力さ|
| ます。 | |
| | |
| コンパイル時のエラーメッセージには、エラー箇所の行番号、確|
| が必要な次のトークンまたはトークンタイプが示されます。複数|
| -e スイッチによって Perl に渡されるスクリプトでは、各 -e |
| イッチが 1 行として数えられます。 |
| | |
| setuid スクリプトには、"Insecure dependency" など の エ ラ|
| メッ セー ジ と して示されるような制限事項があります。詳細|
| perlsec のマニュアルページを参照してください。 |
| | |
【注意事項】 | |
Perl 5.8.4 のインタープリタ自体は 32 ビットアプリケーショ ン
で す が、 Perl 5.6.1 自体は大規模ファイルの処理が可能で 64
ビットの整数を使用するように作られています。詳しい構成情報を
参 照 す るには、perl -V および perlbug -dv を使用してくださ
い。
gcc を使用して CPAN からアドオンモジュールを構築およびインス
トー ルするには、/usr/perl5/5.8.4/bin/perlgcc スクリプトを使
用します。詳細については、perlgcc(1) を参照してください。
独自のバージョンの Perl を作成してインストールする場合でも、
/usr/perl5 にある 5.8.4 バージョンの Perl は削除しないでくだ
さい。このバージョンの Perl は、複数のシステムユーティリティ
で 使 用 されています。Perl のパッケージ名は、以下のとおりで
す。
SUNWperl584core Perl 5.8.4 (中心のファイル)
SUNWperl584usr Perl 5.8.4 (中心以外のファイル)
SUNWperl584man Perl 5.8.4 (マニュアルページ)
Solaris 10 には、Solaris 9 に付属していたバージョン 5.6.1 の
Perl も付属しています。システムはアップグレードするが、Perl
はデフォルトでバージョン 5.6.1 を使用したい場合、詳細につ い
て は、 perlsolaris マニュアルページを参照してください。Perl
5.6.1 は将来のリリースで削除されるため、可能 な 限 り、 Perl
5.8.4 にアップグレードしてください。
【使用上の留意点】
-w スイッチを使用することは、必須事項ではありません。
Perl は、型キャストを行う atof()や、浮動小数点を 出 力 す る
sprintf() など、さまざまな処理のマシン上での定義に影響されま
す。
標準入出力が、特定のストリーム上の読み取りと書き込みの 間 に
シークまたは EOF を必要とする場合、Perl がそれを実行します。
ただしこれは sysread() および syswrite() には適用さ れ ま せ
ん。
組み込みデータ型にサイズ制限 (メモリーサイズを除く) はありま
せ んが、若干の制限事項があります。変数名は 251 文字未満にす
る必要があります。診断メッセージに示される行番号 は 内 部 で
short 型 整数として格納されるので、表示できる行番号は 65535
行目までです。これ以上の行番号は通常 wraparound による影響を
受けます。
発見したバグについて、電子メールで <perlbug@perl.com> 宛に報
告 す る こ とができます。この時、使用している環境の構成情報
(Perl のソースツリーにある myconfig コマンドまたは perl -V
の 実行結果) も必ずお知らせください。Perl のコンパイルに成功
した場合、utils/ サブディレクトリにある perlbug スクリプトを
使用すると、簡単にバグレポートをメールで送信できます。
|
|