我写了一个shell脚本,想在csv文件中打印5个已定义变量的输出,我正在使用一个条件,如果条件1成功,则输出应该在前5列中打印,否则输出应该在接下来的5列中,例如下方:
if condition 1 success
$DAY,$ModName,$Version,$END_TIME,$START_TIME
(应在csv的第1..5列中打印)
if condition 2 success
$DAY,$ModName,$Version,$END_TIME,$START_TIME
(应在csv的列号6..10中打印)
但是使用我的代码输出总是会追加到下一行
下面是我的代码:
if [ "$Version" = linux ]
then
echo "$DAY","$ModName","$Version","$END_TIME","$START_TIME" | awk -F "\"*,\"*" '{print $a ","}' >> output.csv;
else
echo "$DAY","$ModName","$Version","$END_TIME","$START_TIME" | awk -F "\"*,\"*" '{print $b}' >> output.csv;
fi
除此代码外,我尝试了n件事,但找不到解决方法。
感谢您的帮助:)
答案 0 :(得分:1)
chmod +x /home/sdiuser/Build-Release/maven_artifactid
是指输入字段,而不是输出。
当您要以5个空字段开始时,只需将其打印(避免使用{print $6, $7, $8, $9, $10}
)
\n
(下次请使用小写变量名)
当变量可以带有','时,您可能需要在双引号中给出值。