2013年03月29日

pssh, pdshでもない! TakTukを使って複数ホストで並列・同時コマンド実行・ファイル転送する

SSHを利用した複数ホストの並列・自動管理といえば psshpdshParallel、並列・同時実行ではありませんが Capistrano なんて名前が頭に浮かぶんじゃないでしょうか。今日はこれら日本で有名(?)なプロダクトにも引けを取らないPerlベースの並列・自動化ツール TakTuk を紹介します。

media-seek-forward-8


  続きを読む
Posted by netbuffalo at 21:30Comments(0)TrackBack(0)

取り出せなくなってしまったCD/DVDをMacBookから物理的に強制排出する方法

友人が自作した映像作品を僕の為にDVDに焼いてくれたんですがMacBookのドライブに入れたら詰まってしまった。

誰も悪くない、それどころか大好きな友人の筈なのに何故か憎いという感情が湧いてくる・・・こんな複雑な気持ちは、買ったばかりの僕のゲームボーイ(初代)に親戚のお兄さんが表裏反対にカセットを挿した時以来ですよ。。。

face-worried
  続きを読む
Posted by netbuffalo at 21:00Comments(2)TrackBack(0)

2013年03月28日

ライバルに差をつけろ! - Tail パワー・ツールズ 2選(Xtail, MultiTail)

tail に関しては絶対負けたくないライバルがいる・・・そんな人はいないと思いますが、利用頻度の高いtailコマンドがもっと便利に使えると聞けば興味を持つ人は沢山いるんじゃないでしょうか。

istumbler

今日はtailライクな拡張コマンドを2つ紹介します。
   続きを読む
Posted by netbuffalo at 21:30Comments(0)TrackBack(0)

2013年03月27日

標準入力・コマンド出力をパターン毎にカラリゼーションしてくれる Rainbow の使い方

アホ!みたいなスピードで更新されるログを目視で確認する、そんな事って無いでしょうか?
 
僕は時々あるんです。バックエンド・システムの切り替えで端末(Terminal)を開いてログをtail、もちろんgrepなども使って”概ね”問題無いかを確認するんですが、ミリ秒オーダーで処理を行うアプリケーションの場合には、テキストだけで直感的に問題の有無を判断するのは難しいものがあります。こんな時にカラー情報も使えれば表現の次元が増えるので事故・負担も少ないのに・・・。

rainbow

Rainbow はそんな僕・貴方を助けてくれるパータンにマッチしたテキストをカラリゼーションしてくれるCLIアプリケーションなのです。 
  続きを読む
Posted by netbuffalo at 20:00Comments(0)TrackBack(0)

JavaオブジェクトをXMLへシリアライズ, デシリアライズする時に知っておきたいライブラリ2選 - Simple & XStream

データベースを使う程では無いがオブジェクの状態を保存しておきたい、そんな時にはJavaオブジェクトのシリアライズ(直列化)、デシリアライズ(非直列化)が頭に浮かびます。この方法には幾つかありますが、シリアライズされたデータを人が理解・編集出来る、外部システム/他言語間でのデータ交換にも利用することを望むのであればXMLフォーマットは大変便利です。
 
僕はアプリケーションの設定ファイル <-> Java オブジェクト変換に使うことが多いですね。

application-x-zoo

今日は Simple/XStream という2つのJavaライブラリの使い方・特徴を紹介します。 
  続きを読む
Posted by netbuffalo at 08:00Comments(0)TrackBack(0)

2013年03月22日

意外と知らない・知らなくても良い?便利なコマンド、ツールの使い方 - 9選

ブログに書くほど面白い話も思いつかない今日このごろ・・・、今日はあくまで僕の主観で意外と”知らない・知らなくても良いかもしれないコマンド、ツールの使い方”をメジャーなものからマイナーのものまで*つ紹介してみます。

utilities-terminal-9

具体的な使い方はUbuntu (Linux) ベースで紹介しますが、Windows、Macでも使えるものもありますよ。
  続きを読む
Posted by netbuffalo at 22:00Comments(0)TrackBack(0)

2013年03月08日

Log5j (Not Log4j) - Java High Performance Logging Library

アプリケーション開発においてハイ・パフォーマンス・ロギングへの注意は必要でしょうか?

media-seek-forward-3

大部分のアプリケーションでは必要無いかもしれません。しかし、もし貴方のアプリケーションがロギング要件は出来るだけ変更せずに秒オーダーで数千~数万トランザクション/セッションを管理し、なおかつタイムアウトの発生を極力避け無ければならない状況になったらどうでしょうか?

log5j を利用すれば log4j で実装したロギング処理をとても簡単にハイ・パフォーマンス化することが可能です。
  続きを読む
Posted by netbuffalo at 20:30Comments(0)TrackBack(0)

2013年03月07日

日経Linux 2013年4月号にSONY Reader活用記事を書きました

日経Linux電子書籍リーダー担当・・・というのは冗談ですが、3月号のKindle活用記事に続き、2013年4月号にもSONY Reader/PRS-T1活用記事を3ページほど執筆させて頂きました。

日経 Linux (リナックス) 2013年 04月号 [雑誌]

  続きを読む
Posted by netbuffalo at 21:30Comments(0)TrackBack(0)

Java grepスタック - Grep4jで簡単ローカル/リモート・ログ管理

Java grepライブラリ・・・。これまで考えたことも無かったかもしれませんが、Grep4Jを使えばローカル、リモートに関わらずファイルの中身をgrepライクに操作・プログラミングすることが可能です。

text-x-generic

コード・デザインもメソッド・チェーン、ジェネリクスの多用など特徴的で面白いですよ。
   続きを読む
Posted by netbuffalo at 20:30Comments(0)TrackBack(0)

2013年03月03日

Webページの本文(記事)抽出エンジン - Boilerpipe Javaライブラリの特徴と使い方

普段何気なく眺めているWebページですが、プログラミングであるページのメイン・コンテンツ(記事)だけを抽出しようとすれば、パーサーには次に示すようなロジックの実装が必要になります。

  • HTMLの中からタグ、属性情報を利用して本文位置・要素(Element)を推測する
  • 本文と推測した要素内にある不自然な子要素(例えば広告コンテンツ)を削除する
  • 推測した本文要素から各種タグ情報を削除し、プレーンテキスト化する

現時点でこれらの条件を完璧に満たすフリー・ソフトウェアは見当たりませんが、一般的に主流にあるのはサイト(ドメイン)毎に本文位置を表すタグ・属性情報を正規表現で定義し、その要素の内側にある全てのテキストを本文と判断する手法のようです(Rule-based Scraping)。

今日は希薄な単語に共通な特徴を確率モデルを使って本文抽出にアプローチするBoilerpipeライブラリを使ってWebページのデータ化にチャレンジみます。
  続きを読む
Posted by netbuffalo at 18:01Comments(0)TrackBack(0)