2012-02-20 199 views
0

我一直在嘗試使用下面的方法在shell腳本編寫一些輸出到CSV文件:寫入文件shell腳本

writeToResultFile() 
{ 
    resultFile="ShakeoutResult.csv" 
    msg=" $*" 
    echo "writing to resultFile..$msg" 
    echo $msg >> $resultFile 
} 

當我試圖調用此方法:

writeToResultFile "column1,column2,column3" 

它工作正常,並被寫入輸出文件。但是,當我試圖從另一個方法調用此方法,如:

doProcess() 
{ 
    writeToResultFile "data1,data2,data3" 
} 

沒有被寫入到輸出文件。逐步完成,我知道writeToResultFile()被調用,param也在控制檯中被回顯,但不會被追加到輸出文件。

回答

2

只是爲了確保:您使用什麼?擊?因爲它的工作:

#!/bin/bash 
writeToResultFile() { 
    msg=" $*" 
    echo "messaage: $msg" 
    echo $msg >> output.txt 
} 
doProcess() 
{ 
    writeToResultFile "function1,function2,function3" 
} 
writeToResultFile "main1,main2,main3" 
doProcess 

輸出將是(貓output.txt的):

main1,main2,main3 
function1,function2,function3