2013-03-15 34 views
0

要求是從UNIX服務器發送報告。我有一份要在報告中顯示的數據列表,比如來自數據庫。我正在使用sendexchange發送郵件。它始終以純文本格式發送,並且數據不會以正確的對齊方式顯示。我用固定寬度分隔了所有的列,但我仍然沒有得到正確的數據對齊。常見問題:要在郵件內容中顯示的表格而不是作爲附件

這是我的設置:

  1. 我使用的HP-UX
  2. 我只sendexchange,mailx的和郵件實用程序來發送郵件
  3. 我想說明不是數據作爲附件,但在郵件的內容中。
  4. 郵件的內容應該是:

內容 - 報告的說明(標題可能)

下面說,細節應在表

表由頭其中將有列名和包含數據的行

有什麼建議嗎?

+0

你能在服務器上使用perl嗎? – 2013-03-15 12:46:28

+0

@JennyD:是的,我可以!我編寫了在Shell腳本中編寫數據的功能:) – 2013-03-15 12:48:06

回答

0

這裏有兩個問題。一個是電子郵件的實際內容,第二個是如何顯示在收件人的顯示器上。不幸的是,你只能控制第一個。

下面是我將如何做到這一點:通過使用perl而不是shell腳本創建郵件內容,您可以使用format來對齊數據,但是您可以選擇。您可以選擇文本居中,右側或左側調整,並在小數點附近調整數字,必要時填充它們。

man perlformperldoc perlform獲取完整信息,如果您需要幫助確定如何讓它看起來像你想要的樣子,發表一個問題!

而回介紹: 你仍然不能保證郵件看起來罰款的原因是,收件人可以更改自己的電子郵件客戶端,這將影響到郵件的顯示方式 - 例如即使你確實設置了一切以便與等寬字體正確對齊,收件人也可以選擇以Arial查看它,混亂格式化。

+0

我想,即使通過Shell腳本,我也可以對齊數據。那麼有沒有辦法在某個表中顯示相同的內容?像數據表一樣? – 2013-03-15 13:07:38

+0

定義「表格」...您可以使用'-'和'|'繪製類似桌子的東西;這就像你一直保持電子郵件純文本一樣。使用perl格式的要點在於例如允許正確或中心調整,而不必數字字符。此外,許多電子郵件客戶端將內聯HTML顯示爲HTML,即使郵件未被標記爲這樣,以便可以工作,但不能保證。 – 2013-03-15 13:23:25

+0

shell腳本中的建議對我來說會更簡單:) – 2013-03-15 14:04:09

相關問題