UNIX上でコマンドを実行することにより、Windows上でファイルを開いたりブラウザでURLにアクセスしたりできるSoWというツールがあります。
最近はWindowsマシンがなくなって、LinuxとMacを使っているので、似たような機能を持つsomという名のシェル関数を作って使っていたのですが、
Macのターミナルから便利な感じにsambaのボリュームとかをマウントできるコマンドを作った
Macで便利に使えるマウントコマンド作った - hitode909の日記
というエントリを見て、オッと思ったのでsomをちょっと作り直しました。
こんなシェル関数です。
# export SOM_SRC_URL=smb://goa/hirose31 # export SOM_SRC_DIR=/home/hirose31 # export SOM_MAC_DIR=/Volumes/hirose31 # export SOM_MAC_HOST=coupe som() { obj= # file, dir, URL if [ $# -eq 0 ]; then obj=. # open current dir else obj="$1" fi if [ -e "$obj" -o -d "$obj" ]; then cmd="~/bin/fmount ${SOM_SRC_URL} && open $(readlink -f ${obj} | sed -e "s@${SOM_SRC_DIR}@${SOM_MAC_DIR}@")" elif [[ "$obj" =~ ^http:// ]]; then cmd="open $obj" else echo "unknown object: $obj" 1>&2 return 1 fi echo $cmd ssh $SOM_MAC_HOST "$cmd" }
~/bin/fmountは先のid:hitode909さんのエントリのをシェルスクリプトにしたもの。
変数 SOM_* はお使いの環境にあわせてセットしてください。試してませんが、Netatalkんときはafp://にすればいけると思います。
これで、Linuxのターミナルで
- som work/gyoza-no-yakikata.pdf を実行するとMacでファイルを開く
- som work/ を実行するとFinderでそのディレクトリを開く
- som http://www.irori.org を実行するとブラウザでそのURLにアクセス
します。
メールはLinuxのWanderlustで読んでいるんで、添付ファイルを開くときとかに諜報してます。
Enjoy!