2007-07-31

Mac OS XのopenコマンドがLinuxにも欲しい!!

Mac OS Xをコマンドラインから使っている人は知っていると思うが,Mac OS Xにはopenというステキなコマンドが用意されている.

このコマンドの使い方はいたってシンプルで以下のように実行をする.
open 引数

実行結果は引数に与えたファイル属性にあったアプリケーションやプログラムを起動してくれるのである.pdfファイルを引数にするとプレビューが立ち上がるし,テキストファイルを引数にするとテキストエディタが立ち上がるといった具合だ.また,起動するプログラムはあらかじめ該当ファイルの「情報を見る」で登録することができる.ものぐさな自分にとってはまさにうってつけのコマンドだったりする.なので時々,MacからLinuxなどのUnixサーバにログインすると,openと打っている自分がいる.RedHat系のディストリビューションだけかもしれないが,実はopenというコマンドは用意されていて,コンソールなどで使うらしい.

しかたがないのでopen.shというシェルスクリプトを作ってみることにした.

まず,fileコマンドでファイルタイプを調べる.

fileType="`file "$i" | awk -F:\ '{print $2}'`"

で変数fileTypeに応じた処理をこんな感じで振り分ける.

case "$fileType" in
ファイルタイプ)
;;
esac

もしも,未知のファイルタイプに遭遇したら

*)
echo "$fileType"
exit 1
;;

としている.あとは使いながらファイルタイプのリストと処理を追加していけば幸せになれたりする.

ついでに,リモートログインした時にXが使えないときはDISPLAY変数をよしなに設定してくれる処理を入れているので,ディレクトリの中身をnautilusとかでも見れたりできる.

0 件のコメント: