タグ

ブックマーク / d.hatena.ne.jp/lurker (3)

  • 技術メモ帳 - zsh/filesで引数の最大バイト数を回避する

    zshmodules の zsh/files を利用すると、 chgrp, chown, ln, mkdir, mv, rm, rmdir, sync といったコマンドが、 zsh組み込みの関数に置換えられる。 メリットとしては、 移植性が高くなる、 引数文字列の最大バイト数の制限を受けなくなる ということが挙げられるだろう。 このうち、特に僕が便利だなと思っているのが、 引数文字列の最大バイト数の制限を受けなくなるということだ。 簡単に説明すると、 通常、コマンドを実行するときに 引数文字列のバイト数が一定の値を越えると 以下のようにエラーを出して処理をしてくれない。 % mv ./* ../dir zsh: argument list too long: mv そして最悪な事にコレは、 グロブなどを展開した後の文字列のバイト数であるため、 zsh の extended_glob とは非

    iwadon
    iwadon 2009/07/13
  • 技術メモ帳 - Rubyの標準添付CSVパーサーが遅い - FasterCSV

    仕事で、でかいCSVをパースする必要があって、 標準添付のCSVパーサーを使ってみたのだが 体感できるぐらい遅かった。 http://www.ruby-lang.org/ja/man/?cmd=view;name=CSV いろいろ調べたのだが、 どうもこんなときは、FasterCSV を使えば良いらしい。 http://fastercsv.rubyforge.org/ インストールは簡単で、 gem を使うと一発で終わる。 $ gem install fastercsv 他の rubygems モジュールと同じように使ってあげれば良い。 require 'rubygems' require 'fastercsv' FasterCSV.foreach("CSVファイルパス"){ |row| } どれぐらい速いのか知りたかったので さっそくベンチしてみた。 テスト用のCSVファイルは 以下のペ

  • Ruby Debuggerの良さ - 技術メモ帳

    会社からだから、走り書き。 特に推敲もしていない。一度も見直していない。 だが、これは限りなく音に近いのだ。 ruby -rdebug hoge.rb よく使うコマンド break クラス:メソッド名 delete ブレークポイント解除 c ブレークポイントまで続行 l 該当ソースコード表示 n 次の行へ s 次の行へ、関数であれば中に入る p 画面にデバッグ表示 catch off 例外発生時に止まらなくする。 catch <Exception> 指定した例外発生時に停止 var l ローカル変数をすべて表示 良いところ rubyの標準モジュールが使えるところ。 irb 見たいな感覚で使える。 当然、デバッグ中に require 出来るので、 たとえば、pritty print したかったら require 'pp' pp @hoge とかもできるし、 require 'y' y @h

    iwadon
    iwadon 2006/06/24
    debugライブラリの紹介。さりげなくFileUtils.mkdir_pへの苦言もあり。
  • 1