• ベストアンサー

Mail.appでフォルダ内のメールを1通ずつrtfもしくはtxtで保

Mail.appでフォルダ内のメールを1通ずつrtfもしくはtxtで保存したいです。100通以上あり手作業はキツイので良い方法があれば教えていただけないでしょうか? よろしくお願いいたします。 MacOS 10.6 AppleScriptやAutomatorを少し調べましたが、よくわかりませんでした。。。

質問者が選んだベストアンサー

  • ベストアンサー
  • sshiba
  • ベストアンサー率69% (73/105)
回答No.2

#1です。 とりあえず、先の回答に対する反応の中で > 仮に複数メールを1つのPDFファイルとしてエクスポートすると、 という文面がありますのでちょっと気になるのですが、#1で回答した「PDFファイルを作成する方法」というのは、あくまで「1つのメールに対して1つのPDFファイルを作成する」方法であって、「複数のメールを1つのPDFファイルにする」方法ではありません。複数のメールを選択して操作する限り、複数のPDFファイルが作成されますので、その点はご注意ください。 (SOHO notesであれば、複数のPDFファイルを取り込んだ時にそれが1つのエントリにまとまってしまうような挙動はなかったと思います) で、その上で、今回のようなジャーナルソフトに取り込むような用途を考えておられるのであれば、いくらtxtファイルと言っても文字コードが化けていてはちょっと使い物にならないと思いますので、一括してファイル名変更+文字コード変換をしてしまった方が手間がかからないだろうと思います。一番簡単なのはターミナルでちょっとしたシェルスクリプトを走らせるのが手っ取り早いのではないでしょうか。 とりあえず、#1の回答の(c)までを行った状態で、下記の手順を実行してみてください。 (d) Finderの[ユーティリティ]フォルダから[ターミナル]を開く (e) cd コマンドで、#1の(c)の保存先フォルダへカレントディレクトリを移動させる (f) 以下のシェルスクリプトを実行 for i in * { nkf -J -w $i > $i.txt rm -f $i } ※ シェルのコマンドラインから入力して構いません。シェルのコマンドプロンプトが、1行目を入力した段階で">"に変わりますので、2行目以降を続けて入力してください。最後の"}"を入力して[return]キーを押した時点で処理が始まります。 ※ nkfコマンドの"-J"オプションは大文字であり、かつそれ以外のすべてのアルファベット文字は小文字であることに注意してください。1行ずつコピペした方が確実かも知れません。 これでファイル名変更+文字コード変換を一括で行うことができると思います。 なお、申し訳ありませんが、sshibaはUNIXな人なのでAppleScriptはよく知りません。 Automatorを使うのであれば、元のメールをテキストファイルに変換するよりもPDFファイル化した方がよいだろうと思います。ワークフローの中で「PDFからテキストを取り出す」というアクションが選択できますので、これと「テキストエディット書類の内容を設定」アクションを組み合わせることで文字化けのしないテキストファイルを作ることは可能かと思うのですが、上記のシェルスクリプトよりはちょっと手間がかかりそうな感じがします。

lunemoon
質問者

お礼

本当にありがとうございました。 問題は一応?無事解決しました。 まず、 > 仮に複数メールを1つのPDFファイルとしてエクスポートすると、 上記は完全に私の勘違いでした。 「PDFとして保存」すると仰る通り1つ1つ別々のPDFとしてエクスポートされました。 しかし、複数選択したメールのうち、一番最初のメールタイトルで保存されてしまいます。 仮に3通を選択した場合、仮に一番上のメールタイトルが「ミーティングについて」だとすると、 保存されたPDFは ・ミーティングについて-1.pdf ・ミーティングについて-2.pdf ・ミーティングについて-3.pdf のようになってしまい、2通以降のタイトルが正しく反映されません。。。 ちなみにプレビューすると、それぞれのメールタイトルでPDFが一時的に作られるようです。 「PDFとして保存」でPDF名が正常に作られる方法を探していました。 すろと印刷時のPDFメニューに「Save as PDF to SOHO Notes」というメニューを発見! この選択によって正常に(メールタイトルをPDF名として)個々のメールがPDFファイルでSOHO Notes内にインポートされました。 ※余談ですが・・・ 正直PDFだと扱いにくいです。 ただ今回の件でPDFのメリットも実感しました。文字コードあたりはPDFなら気にしなくて良さそうです。 ただPDFに強いのはMacだけですし・・・WindowsはPDF全然ダメですしね。。。Adobe製品買わないと。 情報を溜め込むのであれば、ジャーナル系のソフトがいつまで続くか分からないし、PDFの規格自体もあと何年持つかには疑問を持っています。 ただそれ以上に私が一番懸念していたのはiPod Touch上での取り扱いについてです。 SOHO Notesを導入したのはiPod Touch(iPhone)用のアプリの開発が当時、一番進んでいたからです。 iPhone用のアプリはNoteLifeというのですが、このNoteLife内でtxtやrtfだと見やすく表示されるのですが、 PDFだと所謂PDFリーダー的な表示の仕方になり、視認性がいまいちなのです。 しかし、全文検索などを試したところ、PDF内の単語も正常に拾われていますし、今回の一番重要な目的である「メールをSOHO Notesにインポートしたい」ということは達成出来ていますので、これで十分かもしれないと思いました。 以上の状況を鑑みて、今回教えて頂いたPDFでの保存でSOHO Notesにインポートする方法で行こうと思います。 本当に丁寧にご回答下さりありがとうございました。貴方様のおかげでこの問題はクリア出来ました。 rtfエクスポートが良いなと思ってはいますが、教えて頂いたスクリプトを試してみたら、 nkfコマンド自体が入っておりませんでした(汗 CUIは苦手なのでGUIで出来るPDF保存で今後は頑張りたい思います。

その他の回答 (1)

  • sshiba
  • ベストアンサー率69% (73/105)
回答No.1

その「保存したrtfまたはtxtファイル」をどういった目的で使うのか? というところにもよるのですが、メールにはhtml化されている場合もあったりしますし、そういう場合ですとうまくテキスト情報が取り出せなかったりしますので、「テキスト化」というのはそれほど単純な話ではありません。 目的にもよるので断言はできませんが、一番簡単かつ(Macな環境で)汎用性が高いのは実は「PDFファイルとして保存する」というのが確実だろうと思います。これでしたら、Mail.appの中で (1) メールフォルダのリスト表示において、保存したいメールを選択。[Shift]+クリックなり[cmd]+クリックなりで複数のメールを選択してもよい (2) メールを選択した状態で[ファイル]→[プリント...]メニューを選択 (3) 印刷ダイアログが表示された時点で、ダイアログの下にある[PDF...]ボタンから[PDFとして保存...]メニューを選択 (4) 保存先のフォルダを指定 とやるだけで、一括操作でメールごとにPDFファイルが作れます。 ただ、「どうしてもrtfあるいはtxtファイルじゃなきゃヤダ」ということであれば、多少力技を伴いますが (a) メールフォルダのリスト表示において、保存したいメールを選択。[Shift]+クリックなり[cmd]+クリックを使って複数のメールを選択してもよい (b) メールを選択した状態でマウス右クリック→コンテキストメニューの中から[添付ファイルとして転送]を選択 (c) 新規メールのウィンドウが開き、指定したメールが添付ファイルアイコンになっているので、このアイコンを全て選択してマウス右クリック→コンテキストメニューの中から[添付ファイルを保存]を選択し、保存先のフォルダを指定 という操作をすることで、メールごとにファイルの分けられたテキストファイルが作られます。 但し、これで作られるテキストファイルには2点注意事項があります。 (i) ファイル名には元のメールのタイトルが付いているだけで拡張子「.txt」が付いていません。必要があれば自前で拡張子を付ける必要があります (ii) テキストの文字コードがJISになっている関係で、単純にテキストエディット等のアプリで開くと文字化けします。miやJedit等、JISコードが読み込めるテキストエディタが必要です。 こと、Macな環境においては、特にSnow Leopardの「プレビュー」ではPDFファイルにちょっとした文字を追記したりページ単位での編集ができたりしますし、特に元が「htmlメール」だったりした場合にも殆どの情報(図や画像なども含めて)がPDFファイル中に保管できますので、単純に「保管目的」なだけであれば、テキストファイルよりもPDFファイル化しておいた方が何かと便利だったりします。 ただ、必ずしも「PDF化しておけば万能」というわけでもなく、「あとで編集するのに使う」という目的があったりする場合ですと、プレーンテキストの方が扱いやすいという場合もあることは事実ですので、そのあたりの目的に応じて保存するデータ形式も検討した方が良いかと思います。(前述の通り、保存するデータ形式によって操作手順が大幅に変わりますので)

lunemoon
質問者

お礼

ご回答ありがとうございます。 まず私の目的ですが、SOHO Notesというソフトにメールデータをインポートすることです。 簡単にいうとMacJournalみたいなソフトです。 SOHO Notesはその仕様からtxtやrtfを投げ込めば、ファイル毎にエントリーを作って取り込んでくれます。 mboxなどは読み込めない。またPDFだと扱いが少し重くなるので(断然txtの方が速いので)出来ればテキストデータで扱いたいのです。(おそらくChronosという会社の上位ソフトを買えば出来そうな気もしますが、お金が無いので今の状況でなんとかしたいのです。) 仮に複数メールを1つのPDFファイルとしてエクスポートすると、 SOHO Notesに投げ込んだ時に(メールごとに)エントリーが作られないので 非常に不便なのです。 教えて頂いた方法で、メールごとに指定フォルダに保存するところまでは出来ました。 拡張子がついていないので、Shupapanというソフトで全てのファイルに.txtを付記しました。 そして出来上がったメールごとの.txtをSOHO Notesにインポートしましたが、 一部のメールは文字化けしてしまっています。 色々調べてみたところ、 「添付ファイルとして転送」を押した時点で(添付ファイルとなった)メールは、 既に文字化けしていました。 (添付ファイルとなった)メールのヘッダを見るとISO-2022のようです。 文字化けせずに保存する方法はないでしょうか? もしくは.txtファイル後に文字コード自動判別→指定の文字コードにバッチで変換する方法ないでしょうか? AppleScriptは難しくて・・・AutoMatorだとそれっぽいメニューが見当たりませんでした。 nkfあたりで対応すべきでしょうか?しかしnkfは私にはハードルが高く、手頃なGUIアプリも見つかりませんでした。。。 他にはCharcoというソフトを使ってバッチで文字コード変換しましたが、 すでに文字化け済みの状態でエクスポート(.txt)されているようで、 文字化けは解決しませんでした。。。

関連するQ&A