郵寄

2017-04-27 104 views
0

期間通過shell腳本將CSV到Excel我有以下代碼郵寄

awk test1 > out.xsl 
mail -a out.xsl "Test Subject" [email protected] < /dev/null 

所以我有CSV格式的文件,我需要將其轉換到Excel 正在發送的郵件時。我確實收到郵件,但當我嘗試打開它時,它會損壞 。 Test1是一個CSV文件,並將IAM轉換爲名爲out.xsl的excel文件中的 。蔭發送郵件Excel文件,但蔭無法打開或查看裏面的任何東西請幫助

+0

Excel文件被「壓縮XML」的文件,以便重命名CSV到XLS不會使所有文件它是一個excel文件。保持csv格式,excel可以直接處理。另一種方法是在發送之前通過excel本身進行轉換 – NeronLeVelu

回答

0

使用unoconv

unoconv -i FilterOptions=9,,76 -f xls tables.csv 

這9用作字段分隔符製表符,和76是一個代碼頁(UTF-8)。

unoconv不支持xlsx,只有xls)。

或者使用xlsxwriter編寫一個簡單的python腳本:示例爲here

-1

該腳本將所有的CSV XLSX格式

for f in *.csv; do 
mv -- "$f" "${f%.csv}.xlsx" 
done 

它轉換的文件夾

+0

這個腳本不會轉換任何東西,它只是重命名文件。 –

+0

你是正確的,但它的工作原理是在Microsoft Excel中打開文件.. .xlsx不過是csv for msexcel – Lakshmanavaradhan