2018-05-01から1ヶ月間の記事一覧

スカラコンテキスト

Perl › 構文 › コンテキスト › here Perlにはコンテキストと呼ばれる概念があり、スカラとして評価される文脈をスカラコンテキストといいます。 スカラ変数への代入 スカラ変数への代入はスカラコンテキストです。配列はスカラコンテキストで評価すると、配…

リストコンテキスト

Perl › 構文 › コンテキスト › here Perlにはコンテキストと呼ばれる概念があり、リストとして評価される文脈をリストコンテキストといいます。 配列への代入 配列への代入はリストコンテキストです。 my @values2 = @values; リスト リストの内側はリストコ…

読み込まれているモジュールを調べる %INC

Perl › 特殊変数 › here 読み込まれているモジュールを調べるには%INCという特殊変数を使います。 %INC %INC ハッシュは、モジュール名とモジュールのファイル名の組み合わせが、代入されています。モジュール名と、実際にどのファイルをインポートしたのか…

Perlのイベント情報

Perlのイベント情報は、Twitterのモーメントに移行しました。Perlのイベント情報 - Twitterモーメント2018年 8月25日(土) Perl入学式 in 沖縄 第4回 〜サブルーチン/正規表現編〜 9月8日(土) Perl入学式 in大阪 第3回 〜配列/ハッシュ編〜 9月14日(金) 六本…

OS名を取得する $^O

Perl › 特殊変数 › here OS名を取得するには$^Oという特殊変数を使用します。 $^O $^O の値とOSの種類 各OSにおける「$^O」の値をまとめました。 $^Oの値 説明とリンク MacOS MacOS MSWin32 Windows 全般 os2 OS/2 VMS VMS epoc EPOC OS (たぶん) NetWare Ne…

プロセスの開始時刻を取得する $^T

Perl › 特殊変数 › here プロセスの開始時刻を取得するには特殊変数「$^T」を使用します。 $^T時刻は、エポック秒(1970年1月1日0時0分0秒からの秒数) で取得されます。

子プロセスの終了ステータス $?

Perl › 特殊変数 › here 子プロセスの終了ステータスを取得するには特殊変数「$?」を使用します。waitで子プロセスの終了を待った]場合は、$?に子プロセスの終了ステータスを含めた複数の値が格納されます。またsystem関数を使って子プロセスを実行した場合…

正規表現のキャプチャ $1, $2, $3, ...

Perl › 特殊変数 › here 「$1」「$2」「$3」には、正規表現でキャプチャされた文字列が順番に代入されます。 $1 $2 $3 この後は「$4」「$5」と続いていきます。

サブルーチンの引数 @_

Perl › 特殊変数 › here 「@_」には、サブルーチンの引数が代入されてきます。 @_ サブルーチンで引数を受け取るには一般的に以下のように記述します。 sub foo { # サブルーチンで引数を受け取る my ($arg1, $arg2, $arg3) = @_; }

ファイルの内容をすべて読み込む

Perlでファイルの内容を一括して読み込むには、どうすればよいでしょうか。慣例的に、次のような記述によって、ファイルの内容を一度に読み込むことが多いです。 my $file = 'a.txt'; open my $fh, '<', $file or die "Can't open $file: $!"; # ファイルの…

プロセスIDを取得する $$

Perl › 特殊変数 › here プロセスIDを取得するには特殊変数「$$」を使用します。 my $process_id = $$; プロセスIDとは、OSがプロセスを一意に識別するために、プロセス起動時に割り当てる識別子のことです。

処理にかかっている時間を調べる

バッチ処理のプログラムなどを作っているときに、処理の開始から処理の終了まで、どれくらいかかったのかということを知りたい場合などがよくあります。大きなzipファイルをダウンロードしたり、大量のデータをデータベースなどに挿入している場合は、どれく…

ファイルの存在を確認する

Perl › 演算子 › ファイルテスト › here ファイルが存在するかどうかを確認するには、ファイルテスト演算子「-e」を使用します。 -e $file ファイルが存在すると真値を、存在しないと偽値を返します。ディレクトリやシンボリックリンクなどもファイルとして…

ディレクトリの存在を確認する

Perl › 演算子 › ファイルテスト › here ディレクトリが存在するかどうかを確認するには、ファイルテスト演算子「-d」を使用します。 -d $file ディレクトリが存在すると真値を、存在しないと偽値を返します。ファイル演算子 -d を使ってディレクトリの存在…

ファイルサイズを取得する

Perl › 演算子 › ファイルテスト › here ファイルサイズを取得するには、ファイルテスト演算子「-s」を使用します。 -s $file ファイルサイズの単位はバイトです。 サンプルプログラム ファイルテスト演算子 -s を使ってファイルサイズを取得するサンプルで…

sin関数 - サインを求める

Perl › 関数 › here sin関数を使うと、サインを求めることができます。角度はπ(pi関数)を使って、弧度法で指定するのが簡単です。 use Math::Trig 'pi'; sin(pi/2); (参考)Math::Trig三角関数については以下のページで詳しく解説しています。 三角関数を利用…

cos関数 - コサインを求める

Perl › 関数 › here cos関数を使用するとコサインを求めることができます。角度はπ(pi関数)を使って、弧度法で指定するのが簡単です。 use Math::Trig 'pi'; cos(pi/3); (参考)Math::Trig三角関数については以下のページで詳しく解説しています。 三角関数を…

最終更新から経過した日数を取得する

Perl › 演算子 › ファイルテスト › here 最終更新から経過した日数を取得するにはファイルテスト演算子「-M」を使用します。 -M $file サンプルプログラム ファイル演算子 -M を使って最終更新から経過した日数を取得するサンプルです。 use strict; use war…

最終アクセスから経過した日数を取得する

Perl › 演算子 › ファイルテスト › here 最終アクセスから経過した日数を取得するには、ファイルテスト演算子「-A」を使用します。 -A $file サンプルプログラム ファイル演算子 -A を使って最終アクセスから経過した日数を取得するサンプルです。 use stric…

環境変数を取得・設定する %ENV

Perl › 特殊変数 › here 環境変数は特殊変数「%ENV」を使うことで、取得・設定することができます。 %ENV この環境変数はハッシュで、環境変数名がキーになっています。たとえば、環境変数「REMOTE_ADDR」の場合は以下のようにして値を参照できます。 my $re…

プログラム名を取得する $0

Perl › 特殊変数 › here プログラム名を取得するには特殊変数「$0」を使用します。 $0; プログラムを起動したときの名前を取得できます。つまり、絶対パスでプログラムを指定すれば、絶対パス名が、カレントディレクトリから、相対パスで指定した場合は、相…

モジュールの検索パス @INC

Perl › 特殊変数 › here モジュールの検索パスの一覧は特殊変数「@INC」に代入されています。 @INC モジュールの検索パスとは、Perlが、モジュールを読み込むために、検索するディレクトリのことです。@INC に、含まれないディレクトリに置かれたモジュール…