2010-10-17
fastqファイルの本数を数えるワンライナー
wc -l hoge.fastq |ruby -na -e 'puts $F[0].to_i/4'
当然ですが、ファイルが壊れていないことを祈りましょう。
Rubyのワンライナーメモ
ruby -e 'p RUBY_VERSION'
次いで、-nオプションを付けることにより、以下のような挙動となって、入力行を読み込む。
while gets() $_=$_.chomp <指定したスクリプト文> end
-e オプションは最後に来ることに注意。切り離した方が最初は分かりやすい?
読み込んだ行は、グローバル変数「$_」で参照出来る。
さらに、 -a オプションで、
while gets() $_=$_.chomp $F = $_.split <指定したスクリプト文> end
となる。
-a オプションは -n や -p とともに用いて始めて有効。
以後、説明の追加予定
- -p : -nと同じループ内で実行を行い、自動的に「$_」を出力する。
- -i[extension] : 引数で指定されたファイルの内容を置き換える(in-place edit)ことを指定します。元のファイルは拡張子をつけた形で保存されます。拡張子がなければ、バックアップは行われず、変更されたファイルだけが残ります。
以下、参考、引用記事のリンク
Rubyの起動 コマンドラインオプション
ワンライナーのコマンドラインオプション
http://www.mapee.jp/ruby/post_50.html