リムーバブルメディアなどのファイルリストをホームディレクトリに格納しておくシェルスクリプト ls-R.*

これはもう使ってません。が、そのまま載せておきます。リムーバブルメディアのファイルリストだけ保持する仮想ファイルシステムってあるんですかね。ファイルの実体にアクセスするときだけメディアを入れればいい、みたいな。

作成したスクリプトの「ls-R.*」の「*」は例えば「/mo」の「mo」などのマウントポイントを表します。例えば、「ls-R.mo」/moのためのコマンドであり、それをシンボリックリンクしたls-R.mo2/mo2のためのコマンドとなります。

以下、コマンド「ls-R.mo」について説明します。

使い方は、/moにリムーバブルメディアがマウントされた状態で、

% ls-R.mo
とするだけです。初回の実行時には、そのディスクのラベル名をきいてきますので入力して下さい。
% ls-R.mo
input label name: labelname
すると~/misc/rm-infoというディレクトリのlabelname.ls-R.gzというファイルに`cd /mo; ls -R -l .`の出力が書き出され、gzipで圧縮されます。ちなみに、labelname.ls-R.gzが既に存在する場合においてlabelname.ls-R.gzが更新されるのは、/moの内容がそれと比べて新しい場合においてのみです。また、ディレクトリ/moには「00_LABEL」というファイルが初回の実行時に作成されますが、これにはラベル名が書かれております。ls-R.*と同様なスクリプト「du-a.*」もあります。こちらは、例えば「du-a.mo」で説明すれば、labelname.du-a.gzというファイルに「cd /mo; du -a .」の出力が書き出されて圧縮されます。例えば、以下のような用途に適していると思います。
% zcat labelname.du-a.gz | du2ps | gv -
作者の環境ではよく使うマウントポイントとして /mo, /mo2 があるので、ls-R.mo, ls-R.mo2, du-a.mo, du-a.mo2を用意し、エイリアスを、
alias up.mo "ls-R.mo; du-a.mo"
alias up.mo2 "ls-R.mo2; du-a.mo2"
として、リムーバブルメディアをアンマウントする前に、up.moup.mo2 を実行するように心がけています。すると、そのメディアにどんなファイルがあったかがいつでもわかるので便利です。
Copyright (C) 1999 Taiji Yamada