perlのsay

sayって関数が好きなんですが、
ワンライナーだといつもエラーが出て、原因も分からなくて。

エラーが出てたワンライナー

perl -e 'say "hello!"'

正しくは、こうみたいです。

perl -E 'say "hello!"'

wikipediaを見ると、
5.10で追加された機能を使うときは、”-e”ではなく”-E”を使うそうです。
Usageにも書いてますね、
like -e, but enables all optional features(Usageより)
-Eは-eみたいなもんだけど、すべての機能が使えるよって。

ちなみに、ファイルに書いて実行するときは、

use feature qw( :5.10 );

って書くみたい。
知らなかった・・・。

おしまい。

Leave a Comment