Perlに対する誤解を解きたいPerlのワンライナーは、awkのワンライナーの機能を参考にしたものPerlのワンライナーは、awkのワンライナーの機能を参考にしたものです。awkは行指向のツールで、デフォルトは、各行に対して処理するようになっています。Perlプログラミングは、行指向ではありませんが、Perlのコマンドラインオプションを使用することによって、awkの行指向のワンライナーを表現することができます。ワンライナーを試すために、複数行のファイル「text.txt」を用意しますね。abcdpppabcpppPerlのワンライナーの表現Perlのワンライナーの表現です。先頭がabcの行をprintしています。各行はデフォルト引数「$_」に代入されています。}'-eは、executeのeです。引数で与えられた、Perlプログラムを実行できます。-nはlineのnです。awkと同じように、行指向で、処理をすることができます。デフォルト引数を省略して、もう少し短く書くこともできます。}'awkのワンライナーの表現awkのワンライナーの表現です。先頭がabcの行を出力しています。Perlでは「$_」となっているところが「$0」となっています。}'「$0」を省略して、もう少し短くこともできます。}'あら不思議、コマンドラインオプションと「{}」を除いて、Perlとまったく同じになりました。Perlは、Unix/Linux利用者が、段階的に複雑なことに対応することを想定しているPerlは、汎用的なプログラミング言語ですが、ノンプログラマーがgrep,sed,awkなどのツールを使って作業をしているときに、ある複雑性を超えたタイミングで、汎用的なプログラムが必要になるということを想定しています。Unix/Linuxのツールの利用者が、そう感じたときに、Linux/Unixコマンドから、自然に汎用的なプログラミングにシステムを成長させることができる段階的な経路を、Perlは提供しているのです。Perlは、Unix/Linuxミドルウェアのツールボックスの中のひとつのツールとして存在していて、ユーザーが必要になったときに、使えるようになっています。