You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用bash将程序输出写入CSV文件且避免覆盖原有内容

解决方案

问题原因

  • 你的脚本仅在初始化阶段写入了CSV表头,循环内的Python程序运行结果没有定向到CSV文件,因此不会出现在目标文件中
  • 写入已存在的文件时如果用>会覆盖原有内容,追加内容需要使用>>运算符
  • Python输出的是空格分隔的内容,需要转换为CSV要求的逗号分隔格式

修改后的完整脚本

outfile="gremlin_pop"$low_pop"-"$hi_pop".csv"
echo "Initial Population,Good Gremlins,Bad Gremlins" > $outfile

for p in `seq $low_pop $step_pop $hi_pop`;
do
    echo "Experiment: " $p
    # 处理Python输出转为逗号分隔后追加到CSV
    python3 gremlinSim.py $p | awk '{print $1","$2","$3}' >> $outfile
done

说明

  • 新增的awk命令会提取Python输出的三列内容,用逗号拼接后输出,适配CSV格式,即便输出列之间有多个空格也能正常处理
  • >>是追加运算符,会把处理后的内容新增到文件末尾,不会覆盖之前写入的表头和历史循环的输出
  • echo "Experiment: " $p会正常输出到终端方便查看运行进度,不会写入CSV文件,符合你的需求

内容的提问来源于stack exchange,提问作者Jonathan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 01:15:05