2017-09-14 2 views
0

mailxを使用してAutomic Workload Automation 12.0のbashジョブを使用して電子メールを送信しようとしています。メッセージには特殊文字(この場合はパーセント記号 "°")が必要です。Automic 12 bashでは、mailx本体の特殊文字が本体がバイナリファイルとして添付されています

この例のメッセージの本文はThis is the ° sign.である必要があります。

私はこのコードを使ってメッセージを送信しています。 printf '\xB0'は、°印を印刷します。

(
    printf 'This is the ' 
    printf '\xB0' 
    printf ' sign.' 
) | mailx [etc] 

私はコピーして、bashの端子に直接貼り付けた場合は、電子メールメッセージ本文に印刷された特殊な文字で罰金送信します。

ただし、Automic bashジョブで同じコードを使用すると、電子メール本文は空白になります。添付ファイルがあり、名前はATT00001.binです。 notepad.exeを使用してATT00001.binを開いた場合、ファイルに本文に含まれていたはずのテキストが含まれています。This is the ° sign.本文にあるとおりに正確に文字が印刷されています。

以下は、Automicで使用されると、メッセージが正しい本文​​で送信されます。ファイルは添付されていません。特殊文字がAutomicでこの問題を引き起こしていることは明らかです。

(
    printf 'This is the ' 
    printf 'placeholder' 
    printf ' sign.' 
) | mailx [etc] 

なぜこのようなことが起こるのか、それを解決する方法を知っていますか?

+0

これはバグではなく、機能です! html 'asciiエンコーディングを使用してみてください:*' これは°という記号です。 '* –

+0

私は' sendmail'に切り替えて、あなたが示唆したように '°'表記を使用しました。どういうわけかこれは非常に満足のいくようには見えませんが、うまくいきました。 –

+0

@ F.Hauriあなたが回答を提出したい場合、私はそれを受け入れます。 –

答えて

1

Mailxは進化したMUAです。ちょうどメールを送信するために、あなたはsendmailを使用している場合、あなたはあなた自身のメールヘッダを構築することができます:

/usr/sbin/sendmail [email protected] <<eomail 
To: [email protected] 
Subject: Any interesting thing 
MIME-Version: 1.0 
Content-Type: text/plain; charset="UTF-8" 
Content-Transfer-Encoding: 8bit 

This is the ° sign 
eomail 

それとも、HTMLエンコーディング使用することができますが、ASCII文字のみを使用し、

/usr/sbin/sendmail [email protected] <<eomail 
To: [email protected] 
Subject: Any interesting thing 
MIME-Version: 1.0 
Content-Type: text/html; charset="ASCII" 
Content-Transfer-Encoding: 8bit 

<html><body>This is the &deg; sign</body></html> 
eomail 

ケアを!

関連する問題