Perl入門ゼミ

テキスト処理、Linuxサーバー管理、Web開発ならPerl
  1. Perl
  2. ファイル入出力

標準出力をリダイレクトしてファイルに書き込む

ファイルに出力する最も簡単で頻繁に使われる方法があります。リダイレクトというOSの機能を使って、print関数で行っているディスプレイへの出力を、ファイルに変更します。

以下は、ディスプレイに文字列を表示するサンプルです。

use strict;
use warnings;

# ファイルへの書き込み
print "writed to file\n";

上記のファイルを、sample20080726.pl という名前で保存して、コマンドプロンプトかシェルで

perl sample20080726.pl > 出力するファイル名

と入力してください。( ディスプレイへの出力が、指定したファイルへの出力に変更されます。)

コード解説

(1)標準出力とは

「標準出力」とはディスプレイのことです。print 関数は、デフォルトで標準出力であるディスプレイに出力を行います。以下のように明示的に標準出力を意味するSTDOUTを指定することもできます。

print "writed to file\n";

# 以下と同じ
print STDOUT "writed to file\n"+

(2)リダイレクトで、標準出力を切り替える

perl sample20080726.pl > 出力するファイル名

> 記号で、標準出力をファイルに切り替えることができます。この機能をリダイレクトと呼びます。ディスプレイに表示されるはずの内容が、ファイルに書き込まれます。

print関数で標準出力に出力しておけば、ディスプレイに出力することもファイルに出力することもできます。

  • Perlとはテキスト処理の記述性とパフォーマンスに優れ、正規表現が言語に組み込まれているプログラミング言語です。
  • Linuxサーバーでのフィルタリングプログラム、複数行の文字列を処理、ファイル内容の検索・置換などが得意
  • Perlはgitopensslなど広く普及したUnix/Linuxミドルウェアの補助ツールとして採用実績あり。後方互換性とポータビリティの高さがひとつの理由と推測。
  • 大量のテキストを扱うWeb開発も得意。ロングテールSEOを意識したWebサイト、アドテクやソーシャルゲームでの50ms以内のJSONの生成など。