プロセスIDを取得する $$
Perl› 特殊変数› hereプロセスIDを取得するには特殊変数「$$」を使用します。my$process_id = $$; プロセスIDとは、OSがプロセスを一意に識別するために、プロセス起動時に割り当てる識別子のことです。
View Articleファイルの内容をすべて読み込む
Perlでファイルの内容を一括して読み込むには、どうすればよいでしょうか。慣例的に、次のような記述によって、ファイルの内容を一度に読み込むことが多いです。my$file = 'a.txt'; openmy$fh, '<', $fileordie"Can't open $file: $!"; # ファイルの内容を一度に読み込むmy$content = do { local$/;...
View Articleサブルーチンの引数 @_
Perl› 特殊変数› here「@_」には、サブルーチンの引数が代入されてきます。@_サブルーチンで引数を受け取るには一般的に以下のように記述します。sub foo { # サブルーチンで引数を受け取るmy ($arg1, $arg2, $arg3) = @_; }
View Article正規表現のキャプチャ $1, $2, $3, ...
Perl› 特殊変数› here「$1」「$2」「$3」には、正規表現でキャプチャされた文字列が順番に代入されます。$1$2$3この後は「$4」「$5」と続いていきます。
View Articleプロセスの開始時刻を取得する $^T
Perl› 特殊変数› hereプロセスの開始時刻を取得するには特殊変数「$^T」を使用します。$^T時刻は、エポック秒(1970年1月1日0時0分0秒からの秒数) で取得されます。
View ArticleOS名を取得する $^O
Perl› 特殊変数› hereOS名を取得するには$^Oという特殊変数を使用します。$^O$^O の値とOSの種類各OSにおける「$^O」の値をまとめました。$^Oの値説明とリンクMacOS MacOSMSWin32 Windows 全般os2 OS/2VMS VMSepoc EPOC OS (たぶん) NetWareNetWaresymbianSymbian...
View ArticlePerlのイベント情報
Perlのイベント情報は、Twitterのモーメントに移行しました。Perlのイベント情報 - Twitterモーメント2018年8月25日(土)Perl入学式 in 沖縄 第4回 〜サブルーチン/正規表現編〜9月8日(土)Perl入学式 in大阪 第3回 〜配列/ハッシュ編〜9月14日(金)六本木.pm (株式会社メルカリ 六本木ヒルズ森タワー18F)9月15日(土)Perl入学式 in札幌...
View Article読み込まれているモジュールを調べる %INC
Perl› 特殊変数› here読み込まれているモジュールを調べるには%INCという特殊変数を使います。%INC%INC ハッシュは、モジュール名とモジュールのファイル名の組み合わせが、代入されています。モジュール名と、実際にどのファイルをインポートしたのかがわかります。Data::Dumperで出力した結果は以下のようになっています。$VAR1 = { 'Data/Dumper.pm' =>...
View Articleリストコンテキスト
Perl› 構文› コンテキスト› herePerlにはコンテキストと呼ばれる概念があり、リストとして評価される文脈をリストコンテキストといいます。配列への代入配列への代入はリストコンテキストです。my@values2 = @values; リストリストの内側はリストコンテキストです。(@values); 無名配列生成子無名配列生成子の内側はリストコンテキストです。[@values];...
View Articleスカラコンテキスト
Perl› 構文› コンテキスト› herePerlにはコンテキストと呼ばれる概念があり、スカラとして評価される文脈をスカラコンテキストといいます。スカラ変数への代入スカラ変数への代入はスカラコンテキストです。配列はスカラコンテキストで評価すると、配列の長さを返します。my$num = @values; 比較演算子の項比較演算子の左右の項はスカラコンテキストです。$x< @values$x...
View Articlescalar関数 - スカラコンテキストで評価
Perl› 関数› herescalar関数を使用すると、スカラコンテキストを強制することができます。# スカラコンテキストで評価scalar実行文 たとえば配列をスカラコンテキストで評価すると配列の個数が取り出せますが、scalar関数を使って明示的に書くと以下のようになります。# 配列の個数my$count = scalar@values;...
View Articlesyswrite関数 - ファイルにバイト数を指定して書き込み(バッファリングなし)
Perl› 関数› heresyswrite関数を使用すると、ファイルにバイト数を指定して書き込むことができます。syswrite$fh, $buffer, $byte_size;...
View Articlesysread関数 - ファイルからバイト数を指定して読み込み(バッファリングなし)
Perl› 関数› heresysread関数を使用すると、ファイルからバイト数を指定して読み込むことができます。sysread$fh, $buffer, $byte_size;...
View Articleread関数 - ファイルからバイト数を指定して読み込み
Perl› 関数› hereread関数を使用すると、ファイルからバイト数を指定して読み込むことができます。read$fh, $buffer, $byte_size;...
View ArticlePerl 5.28リリース - Unicode 10.0サポート、文字列連結の高速化、ref関数、keys関数、forループの高速化
Perl 5.28が2018年6月22日にリリースされました。Perl 5.28でうれしい機能をピックアップして紹介。Unicode 10.0サポートUnicode...
View Article雅なPerl入門 - 雅ちゃんが大学生クロウにPerlを学ぶ物語
雅(みやび)なPerl入門は、雅ちゃんが大学生クロウにPerlを学ぶ物語形式で、Perlを学べる入門書。「Perlを教えてくださいっ!」ある日突然、twitterのダイレクトメッセージにメッセージが飛び込んできた。それは女の子からのものだった。どうせまたスパムだろう。最初はそう思っていたのでメッセージを無視し続けていたのだ。しかし、その後もメッセージは送られ続けてきた。そんな俺がPerlを教えること...
View ArticleStrawberry PerlをWindowsにインストールする
Perl› インストールStrawberry Perl(ストロベリーパール)はWindowsでPerlを利用するために作成されたPerlのディストリビューションのひとつです。Strawberry Perl for WindowsStrawberry...
View ArticleUnix/LinuxへのPerlのインストール
Perl› インストールUnix/Linux環境には、すでにPerlがインストールされてることが多いです。以下のコマンドでPerlがインストールされているか確認してみましょう。perl -v...
View ArticlemacOSへのPerlのインストール
Perl› インストールmacOSの環境には、すでにPerlがインストールされています。以下のコマンドでPerlがインストールされているか確認してみましょう。perl -v...
View ArticleMojoliciousのホームディレクトリを変更する
Perl› MojoliciousMojoliciousのホームディレクトリを変更するには「MOJO_HOME」環境変数を使用します。BEGIN { $ENV{MOJO_HOME} = '/foo/bar'; } use Mojolicious::Lite; Mojolicious::Liteを読み込む前に設定しましょう。あるいは、あらかじめ環境変数をシェルから設定してください。export...
View Article「サンプルコードPerl入門」は「Perl入門ゼミ」に名称を変更しました
「サンプルコードPerl入門」は「Perl入門ゼミ」に名称を変更します。去年お伝えしておいた通り2019年1月より名称変更になりました。もともとは、Perlのサンプルがたくさんあれば、コピペして、そのまま使えるから便利だなという目的で始めたサイトでした。問題の一つは、名前が言いづらかったことと長かったことです。最初の記事は、2008年1月に投稿していますが、心機一転、11年目にして、名称変更になりま...
View ArticlePerl以外のプログラミング言語を仕事で選択できる時代は良い時代
Perl以外のプログラミング言語を仕事で選択できる時代は良い時代だと思います。 Perlに価値を見出す人はPerlを選べて、Perlを好まない人は、人気のRuby, PHP, Python, JavaScript, Java, goを選べる。 Perl以外の仕事が、たくさんあります。Perlをもし生理的に受け付けない心情があるのでしたら、Perlに価値を見出す方に、ぜひその仕事を譲ってください。...
View ArticlePerl入門ゼミ - Perlを0から学べる無料テキスト
Perlプログラミングを学びたい人向けのPerl入門講座です。Perlはテキスト処理に最適化されたプログラミング言語です。Linuxシステム管理、Web開発という分野でも大活躍。後方互換性、ライブラリの安定性、数多くのOSサポートに定評があります。Perl入門PerlのインストールPerlのインストール方法を解説。Windows、macOS、Unix/Linux対応。基礎文法最速マスターPerlプロ...
View Article