メールの送受信の他に、メールを保存しておき、そのメールを後で読むことができます。mailx では、通常のテキストファイルにメールを追加することによってメールを保存できます。また、フォルダと呼ばれる特殊ファイルにメールを追加することもできます。これらの方法について次に説明します。
mailx では、メールの保存とメールのコピーは区別されます。メールを保存すると、そのメールはメールボックスから削除されてファイルやフォルダに追加されます。一方、メールをコピーすると、メールはメールボックス内に残り、そのコピーがファイルやフォルダに追加されます
メールをファイルに保存するには、mailx プロンプトに対して次の形式のコマンドを実行します。
s number filename
number は保存するメールの番号、filename はメールが保存されるファイル名です。たとえば、3 番目のメールを ‾/notes/finance というファイルに保存するには、次のように入力します。
& s 3 ‾/notes/finance |
(パス名中の ‾ は、各ユーザのホームディレクトリを示します。)
複数のメールを一度に同じファイルに保存することもできます。たとえば、3、5、6、7、8 番目のメールを ‾/notes/finance に保存するには、次のように入力します。
& s 3 5-8 ‾/notes/finance |
指定したファイルが存在しない場合は、mailx によって作成されます。ファイルが存在する場合は、保存するメールはファイルの終わりに追加されます。
メールをファイルに保存すると、そのメールはメールボックスから削除されます。この場合は、保存されたメールの見出しにアスタリスク (*) が表示されます。
3 番目のメールをメールボックスに残したまま別のファイルに追加 (コピー) する場合は、次のように copy コマンドを入力します。
& c 3 ‾/notes/finance |
フォルダにメールを保存またはコピーする場合は、ファイルのようなフルパス名を指定する必要はありません。フォルダは、フォルダディレクトリに保管されている特殊ファイルです。
フォルダにメールを保存またはコピーすると、同じディレクトリ内にメールが自動的に保管され、長いパス名を入力しなくてもそのディレクトリに簡単にアクセスできます。
フォルダを使うには、まず最初にフォルダディレクトリ (フォルダ用のディレクトリ) を設定する必要があります。(フォルダディレクトリは通常、ホームディレクトリ内に設定します。) このため以下の 2 つの手順を実行します。
最初に、mkdir コマンドを使ってディレクトリを作成します。
たとえば、Letters というフォルダディレクトリを設定するには、次のようなディレクトリを作成します。
$ mkdir Letters |
次に、フォルダディレクトリのパスを設定するために、テキストエディタを使ってホームディレクトリ内の .mailrc ファイルを編集します。.mailrc ファイルには、mailx で使われるオプションが入っています。
次の例のように、新しく作成したフォルダディレクトリのフルパス名を指定するために、set folder
変数を編集します。
set folder=/home/austin/rose/Letters |
C シェルの短縮名である ‾ を使ってホームディレクトリを指定することもできます。
set folder=‾/Letters |
これでフォルダディレクトリは、フォルダに保存されるメールを受け取るよう設定されます。(.mailrc ファイルの変更内容は、次回 mailx を起動したときに有効になります。)
フォルダにメールを保存またはコピーするときは、ファイルの場合と同じコマンドを使います。ただし、フォルダ名の前にはパス名の代わりにプラス記号 (+) を付けます。+ は、フォルダをフォルダディレクトリ (ここでは Letters) に保存するよう mailx に指示します。
たとえば、3 番目のメールを projects というフォルダに保存するには、次のように入力します。
& s 3 +projects |
mailx は、このコマンドを「3 番目のメールを ‾/Letters/projects に保存する」という意味に解釈します。(指定のフォルダが存在しない場合は、mailx によって作成されます。)
メールをフォルダにコピーする場合は、次のように入力します。
& c 3 +projects |
メールのコピーは、任意のファイルやフォルダに直接送信できます。フォルダにコピーを送信する場合は、Cc: プロンプトまたは Bcc: プロンプトに対してフォルダ名 (たとえば、projects) を入力するだけです。ファイルにコピーを送信する場合も同様ですが、ファイルのフルパス名を指定する必要があります。
ファイル内に保存されたメールを読み取るには、次の形式のコマンドを使います。
mailx -f filename
たとえば、‾/memos/finance ファイル内のメールを読み取るには、次のように入力します。
$ mailx -f ‾/memos/finance |
フォルダに保存されたメールを読み取る場合も同じコマンドを使います。その場合は、フルパス名の代わりに + 記号を使います。たとえば、projects フォルダ内のメールを読み取るには、次のように入力します。
$ mailx -f +projects |
このコマンドは、指定されたファイルやフォルダに対して mailx を起動し、それらのファイルやフォルダ内に存在するメールの見出しを表示します。読み取るメールを選択するには、mailx プロンプトに対してメールの番号を入力し、Return キーを押します。
mailx プログラム内からもフォルダを操作できます。フォルダのリストを参照するには、mailx プロンプトに対して次のように入力します。
& folders |
メールボックスからフォルダに切り換えるには、次の形式のコマンドを使います。
& folder +foldername |
メールボックスに戻るには、mailx プロンプトに対して次のように入力します。
& % |
mailx を起動したなかで最後に使用したフォルダに戻るには、次のように入力します。
& # |