綾小路龍之介の素人思考

1行スクリプトをスクリプトファイルにする

1行スクリプトと言っても、何回も使うならいちいち入力するのは面倒なので同等の機能を持ったスクリプトファイルにしましょう。説明は日本語 perl texinfo - Optionに詳しい。とにかく、1行目にperlのパス-Mと-e以外のオプションがある場合はそれを続け、-Mがある場合は2行目にuseを置いて其の後に-M以降、3行目に-e ''で括った中身を書けばOKのような感じ。ためしに以前書いたhtmlエスケープの1行スクリプトをスクリプトファイルにしてみる。ターゲットは下のような感じ。

$ perl -MHTML::Entities -pe 'encode_entities($_,"<>&");' hoge.tex

これは下のように書き下せる。

$ cat htmlescape.pl
#!/usr/bin/perl -p
use HTML::Entities;
encode_entities($_,"<>&");
$ chmod +x htmlescape.pl
$ mv htmlescape.pl ~/bin/

これに名前htmlescape.plを付けて、実行属性を加えて、パスの通った場所においておけばいつでも使える。使い方は下のような感じ。

$ ./httpescape.pl hoge.tex

せっかく1行でかけるのだからbashのaliasにしてしまうのが一番楽なのかも知れん。そういえば、#!から始まる行のことをシェバング行と呼ぶとか呼ばないとか。で、#シャープと!バングでシェバングだとか。

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2007-08-24T04:49:59+09:00
  2. Modified: 2007-08-24T04:05:23+09:00
  3. Generated: 2017-08-06T23:10:04+09:00