.eml拡張子を持たないファイルを電子メールファイルとして開く代わりに、Thunderbirdは新しい電子メールの作成を開始して添付ファイルとして追加します。スクリプトでThunderbirdを使用するために、私は「一時的に名前を変更して」Thunderbirdでfile
開きfile.eml
(編集用ですが、少なくとも読み取り用)、ディスクに何も保存せずに閉じる方法を探しています。コースの記憶。
ファイルをコピーするか、一時的な場所にファイルへのシンボリックリンクを作成することができます。プロセス置換を使用するエレガントな方法がたくさんあります。またはここに文字列があります代わりに、プロセス期間中にのみ存在する「一時ファイル」をRAMに生成します。
bash / zshで "pseudo-symlink"を生成するためにできることはありますか?
答え1
このシーケンスを実行するスクリプトを提案する場合:
filename
次に接続filename.eml
- Thunderbirdが開き、
filename.eml
データに関連するすべての操作を実行します。 - ステップ1のリンクを元に戻す
それでは、ハードリンクが目的の結果を得られないのはなぜですか?たとえば、次のようにln
なりますln -s
。
file_name=/path/to/file
ln "${file_name}" "${file_name}.eml"
thunderbird -arg1 -arg2 -arg-etc
rm "${file_name}.eml"
ハードリンクは追加のディスク容量を消費せず、単にファイルのinodeとデータへの追加のファイル名/ファイルパスを提供します。ディスクI / Oに問題がない限り、ファイルデータをRAMにコピーする必要はありません(ただし、ファイルに拡張子.emlがある場合は問題になる可能性があります)。