You need to enable JavaScript to run this app. 如何更简洁地提取文件指定列内容并插入另一文件头部?
优惠活动
大模型
产品
解决方案
定价
更多

如何更简洁地提取文件指定列内容并插入另一文件头部?

精简实现脚本

方案1(全平台兼容,无兼容性问题)

{ awk 'NR>1 {printf s++ ? "|" $1 : $1} END {print ""}' file1; cat file2; } > tmp && mv tmp file2

逻辑说明:

  • 单条awk完成字段提取和拼接:跳过第1行表头,首个有效字段直接输出,后续字段前先拼接|,避免生成末尾多余的分隔符,最后输出换行符保证格式正常
  • 命令组合并拼接结果与原file2内容,通过临时文件过渡后覆盖原file2,避免直接重定向导致文件内容被清空的问题

方案2(GNU环境可用,更短)

如果是使用GNU sed(默认Linux发行版自带),可以用更短的写法:

sed -i "1i $(awk 'NR>1 {printf s++ ? "|" $1 : $1}' file1)" file2

逻辑说明:

  • 用awk的输出作为sed插入的内容,直接插入到file2的第1行之前,-i参数直接修改原文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.12 01:09:04