2

名前にコロン (:) 文字を含むファイルを電子メールで送信しようとしています:

my_attachment_name=some_file_with_:_in_the_name.txt
uuencode "${my_attachment_name}" "`basename \"${my_attachment_name}\"`"
     | mail -s "My Report ..." my_email@xyz.com

しかし、メールを受信すると、ファイル名から「:」が削除されています。

some_file_with__in_the_name.txt

どうすれば修正できますか?

ありがとう。

4

1 に答える 1

0

「--encode-file-name」で uuencode を使用してみてください。ただし、ここでは次のように表示されます。

$ uuencode foo:bar.txt foo:bar.txt
begin 664 foo:bar.txt
#:&D*
`
end

これはまさに「begin」行で私が望むものです。

対照的に:

$ uuencode --encode-file-name foo:bar.txt foo:bar.txt
begin-encoded 664 Zm9vOmJhci50eHQ=
#:&D*
`
end

uudecode は、私のコンピューターで Zm9vOmJhci50eHQ= から foo:bar.txt を再構築できるオプションを必要としません。

電子メールの生の内容も確認してください。電子メール クライアントがおかしくなっている可能性があります。たとえば、DOS バイアスにより、電子メール クライアントがコロンを削除する可能性があります。

于 2015-10-14T10:03:41.873 に答える