2014-07-24 30 views
0

我的腳本非常好,並生成一個文件。該文件爲純文本格式,格式如下(我的期望結果應該看起來像這樣)。但是,當我嘗試將我的文件發送到我的電子郵件時,格式是完全錯誤的。Shell腳本電子郵件格式不正確?

我用來發送電子郵件的代碼行。

cat ReportEmail | mail -s 'Report' [email protected] 

我收到了我的電子郵件。

30129     22.65  253 
96187     72.32   294 
109525     82.35   295 
10235    7.7   105 
    5906    4.44   106 
76096     57.22   251 

我的預期結果應該是這樣的。

30129     22.65   253 
96187     72.32   294 
109525     82.35   295 
10235     7.7   105 
    5906     4.44   106 
76096     57.22   251 
+0

請注意UUOC(無用貓):它應該是'mail -s'報告'[email protected]

回答

1

您的源文件通過使用製表符和空格的組合來實現列對齊。但是,分配給選項卡的寬度因程序而異。例如,4個,5個或8個空間的寬度是常見的。如果您希望從一個查看器到下一個查看器以純文本格式進行一致的格式化,請僅使用空格。

作爲一種變通方法,您可以展開的選項卡空間使用expand實用程序文件傳遞到mail前:

expand -t 8 ReportEmail.txt | mail -s 'Report' [email protected] 

選項-t 8告訴擴大治療選項卡爲8個空格寬。將8更改爲始終使ReportEmail.txt中格式正常工作的編號。

相關問題