Perl版irb?perlshを試してみる
Perlでirbのような使い方をしたかったので、perlshをインストールしてみました。
perlshはCPANで提供されています。(Term::ReadLine::Gnu)
1. libreadline5-dev libncurses5-devのインストール
・perlshのインストール前にlibreadline5-dev libncurses5-devをインストール。
インストールしておかないとTerm::ReadLine::Gnuのインストールでエラーがでます。
$ sudo apt-get install libreadline5-dev libncurses5-dev
2. Term::ReadLine::Gnuのインストール
・CPANでTerm::ReadLine::Gnuでインストールします。
$ sudo cpan Term::ReadLine::Gnu
CPAN: Storable loaded ok (v2.18)Writing /usr/local/lib/perl/5.10.0/auto/Term/ReadLine/Gnu/.packlist
Appending installation info to /usr/local/lib/perl/5.10.0/perllocal.pod
HAYASHI/Term-ReadLine-Gnu-1.19.tar.gz
/usr/bin/make install -- OK
Warning (usually harmless): 'YAML' not installed, will not store persistent state
3. perlshファイルの配置
・Term::ReadLine::Gnuをインストールしただけだと、perlshがインストールされないので、
PATHの通っているディレクトリに手動でファイルを配置します。
・Term::ReadLine::Gnuのソースをダウンロードします。
・/usr/local/bin以下にperlが無いとperlshの実行時にエラーになるので、
シンボリックリンクも作成します。
Term::ReadLine::Gnuのダウンロード先
http://search.cpan.org/~hayashi/Term-ReadLine-Gnu/
# ダウンロードファイルの解凍
$ gzip -cd Term-ReadLine-Gnu-1.19.tar.gz | tar xf -# perlshのコピー
$ sudo cp -p eg/perlsh /usr/local/bin/perlsh# perlのシンボリックリンクを/usr/local/binに作成
$ ln -s /usr/bin/perl /usr/local/bin/perl
以上でインストールは完了です。
こんな感じで使用できます。
$ perlsh
main[1]$ printf "HelloWorld";
HelloWorld1
main[2]$ 1 + 2 + 3 + 4 + 5
15
main[3]$ "Hello" . "World"
HelloWorld
irbっぽくて、ちょっとしたコードの確認に便利です。