nodebrew 0.2.0 Released

つくってしばらく放置してたnodebrewを色々変更してみた。

https://github.com/hokaccha/nodebrew

主に

  • wgetに対応(以前はcurlのみ)
  • ワンライナーでインストールできるようにした
  • ~/.nodebrew以下にnodebrew自信も置くようにした
  • 環境変数(NODEBREW_ROOT)でルートディレクトリを変更できるようにした(デフォルトは~/.nodebrew)
  • ls追加(listのエイリアス
  • selfupdate追加(nodebrew自信をアップデート)
  • 諸々バグ修正

インストールは

$ curl https://raw.github.com/hokaccha/nodebrew/master/nodebrew | perl - setup

でOK。短縮URLにしたい(git.ioにしようと思ったらraw.github.comができなかった)。

もしくは普通にダウンロードして

$ wget https://raw.github.com/hokaccha/nodebrew/master/nodebrew
$ perl nodebrew setup

でもOK。

npmインストール機能はつけようと思ったけどnodeインストールで入るようになったんでとりあえずいいかなと思ってる。前のバージョンは手動で入れる必要あるけど。

あと実装したい機能は

  • nodebrew install v0.6 でv0.6の最新が入るとか nodebrew install lastestとかで最新が入るとか
  • symlinkで切り替えてるのでプロセス毎のバージョンの切り替えができないのでできるようにしたい(けどいい実装のアイデアが思いつかないので実装案募集)

バグ報告、機能追加希望お待ちしております。
Issues · hokaccha/nodebrew · GitHub

perlで標準入力のコードを実行するときに引数を取る

$ echo 'print $ARGV[0]' | perl hoge
Can't open perl script "hoge": No such file or directory

って感じでエラーになるので

$ echo 'print $ARGV[0]' | perl - hoge
hoge

こうするといいらしい。

ここに書いてあった。

標準入力から暗黙に渡される。 ファイル名を示す引数が無い場合にのみうまくいきます。 STDIN から読み込むプログラムに引数を渡すには、 プログラム名として明示的に "-" を指定しなくてはなりません、

http://perldoc.jp/docs/perl/5.10.0/perlrun.pod