List of class taught by takasu thermodynamics MH by takasu

mh入門: slocalを使って
メールを自動分類する方法

                  by 高須    written 96.11.08
                             revised 97.04.04

    → UNIXメモの目次   ホームページ

★Important★
設定は自分の責任でして下さい。
失敗しても、筆者は一切責任を持ちません。



はじめに
1。mhをインストール
2。~/.maildeliveryファイルを編集
3。~/.forwardファイルを編集
4。各フォルダのメール数を見る。
5。来たメールの読み方
6。メールの返事の出し方
7。新規メールの出し方
8。漢字コードについて
9。フォルダ内のメール処理
参考文献

はじめに

メールがたくさん来るようになると、Subjectフィールドで分類したく
なります。UNIX環境でmhを使うと、自動的に別のディレクトリに
入れるように設定できます。

mhを使うと、例えば、「このメーリングリストから
来たメールは読まない(保存だけしておく)」と
いうこともできます。
また、「××さんから来たメールは別のアカウントに転送」
などという設定もできます。

以下は、同僚にmhの使い方を説明した時のメモです。
詳しくは参考文献[1]を見て下さい。(といっても厚さ3cmの本なので、
読むのも大変ですが。)

注意:
・必ず最後まで読んでから試して下さい。
・メール流量が少ない日(日曜?)などにまずテストをしてから、 本格的に使って下さい。
(3で説明する.forwardファイルをはずせば、元の状態に戻ります。)
・設定は自分の責任でして下さい。
・失敗しても、筆者は一切の責任を持ちません。


1。mhをインストールする。

これはマシンの管理者に聞いてみて下さい。
我々のマシンSS10 (Sun OS 4.1)の場合は、
/usr/local/mh/ に入ってました。

2。~/.maildeliveryファイルを編集する。

例 cat ~/.maildelivery Subject test pipe A "/usr/local/mh/rcvstore +test" default - pipe A "/usr/local/mh/rcvstore +inbox"
このファイルにより、Subject行にtestが含まれるメールは
ディレクトリ~/Mail/testにセーブされ、その他のメールは
~/Mail/inboxに保存されます。

このファイルはchmod 600で本人のみ読めるようにしておきます。
.maildeliveryが参照されるのは、次の3で.forwardファイルが
設定されてからです。


3。~/.forwardファイルを編集する。

  cat ~/.forward
  | /usr/local/mh/slocal -user takasu
chmod 600 .forward により、自分のみに許可を与えておきます。
.forwardファイルを作ることにより、メール分類が開始されます。

他のマシンにアドレスがある人は、

  cat ~/.forward
  user@other.machine.address
  | /usr/local/mh/slocal -user takasu
としておけば、バックアップがとれます。
slocalがうまくいかない場合、エラーメールが送り手に もどってしまいます。 何かおかしい時は、すばやく
  mv .forward forward.save
などとして、.forwardファイルを一時退避させると、 元に戻ります。

4。各フォルダのメール数を見る。

まずフォルダーを用意しておきます。上の.maildeliveryの例だと、
  ~/Mail/inbox
  ~/Mail/test
のディレクトリをつくっておきます。

テストメールを出してみます。
自分に、Subject行にtestが入ったメールを2通、入ってない
メールを1通出してみます。


  folder -all

によって、

           Folder      # of messages (  range  ); cur  msg
             inbox has    1 message  (   1-   1);
             test  has    2 messave  (   1-   2);
と出てきます。



以下はmhを知らない人のために、基本的な使い方です。

5。来たメールの読み方

               
(1)Subjectの一覧表を見るには、

folder +test フォルダ名の指定
scan フォルダ内のメールのSubject一覧を出す。

361 11/08 dareka@machinename. Re:test

これにより、361番というメールが来ていることがわかります。

(2)361番のメールを読む

cd ~/Mail/test/
more 361

(3)読んだメールがいらない時は、消すか、サブディレクトリ
Mail/test/old を作って収納しておけば、次回から、scanで
表示されなくなります。

6。メールの返事の出し方

  folder +test   フォルダの指定
repl 361 返事するメール番号の指定。
画面が出てくるので、emacs で編集します。
(先にファイルに編集しておいて、読み込んでもよい。その方が安全です。)
この時のデフォルト書式の指定の仕方は参考文献[1]を見て下さい。
編集後にセーブすると、
         What now?
と聞いてきますので、
list
によってもう一度表示させて確認して、
(特に、漢字コードが化けないか注意)

send 送信

あるいは、

quit いったん出る。

途中の結果は~/Mail/draftに保存されてます。

7。新規メールの出し方

comp によって、画面が出てきます。
あとは6と同じです。

8。漢字コードについて。

WSの設定によっては、EUCコードに変換しないと読めない場合も
あります。たくさん来たメールをまとめてEUCコードに変換するには、
次のようなスクリプトを使うと便利です。
         euc1

9。フォルダ内のメール処理

フォルダ内にたくさんメールがたまってくると、
どれが読んだメールかわからなくなることがあります。

その対策の1つは、各フォルダ内にoldというディレクトリを
作っておいて、最新のを1つ残して、あとはoldにしまっておく
方法です。

  cd ~/Mail/test
ls
31 32 33 34 35 old/
と入っていれば、読んだ後は、
  mv 3[1-4] old
によって、
  ls
  35 old/
となって、次の新しいメールは36として入るわけです。

inbox内だけ、差出人の名前で分類している人もいるようです。

  cd ~/Mail/inbox
  ls
     2 3 old/
  mv 2 old/yamada1
  mv 3 old/nishikawa5

参考文献

[1]「MH&xmh」Jerry Peek著、倉骨彰訳、アスキー出版、
5800円、ISBN 4-7561-0298-0

[2] 「The Unix Super Text 上巻」山口和紀著、技術評論社、3400円、
ISBN 4-87408-505-9.
23章に少しだけMHの説明があります。

 → 先頭   → UNIXメモの目次   ホームページ