我一直试图在shell脚本中使用以下方法将一些输出写入CSV文件:
writeToResultFile()
{
resultFile="ShakeoutResult.csv"
msg=" $*"
echo "writing to resultFile..$msg"
echo $msg >> $resultFile
}
当我试图调用此方法时:
writeToResultFile "column1,column2,column3"
工作正常,写入输出文件。但是当我尝试从另一种方法调用此方法时,例如:
doProcess()
{
writeToResultFile "data1,data2,data3"
}
没有任何内容写入输出文件。单步执行,我知道调用writeToResultFile()并且param也在控制台中回显,但没有附加到输出文件。
答案 0 :(得分:2)
只是为了确定:你用的是什么?击?因为它有效:
#!/bin/bash
writeToResultFile() {
msg=" $*"
echo "messaage: $msg"
echo $msg >> output.txt
}
doProcess()
{
writeToResultFile "function1,function2,function3"
}
writeToResultFile "main1,main2,main3"
doProcess
输出将是(cat output.txt):
main1,main2,main3
function1,function2,function3