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

如何在Terminal中为制表符分隔TXT文件添加固定值第三列?

在Terminal中给制表符分隔的TXT文件添加固定第三列的便捷方法

嘿,这个需求在Terminal里有好几种超便捷的实现方式,我给你列几个最常用的,挑顺手的用就行:

  • 用awk命令(最推荐,语法直观)
    awk是处理文本的神器,对付这种固定列追加的需求简直得心应手。假设你的源文件名叫input.txt,直接运行下面的命令就能生成带第三列的新文件:
awk '{print $1 "\t" $2 "\tEcoRI"}' input.txt > output.txt

简单解释下:$1和$2分别对应每行的第一、第二列,\t用来保持原文件的制表符分隔格式,最后拼接上固定内容EcoRI,结果会输出到output.txt里。要是你想直接修改原文件(记得提前备份,谨慎操作!),可以用GNU awk的原地编辑参数:

awk -i inplace '{print $1 "\t" $2 "\tEcoRI"}' input.txt
  • 用sed命令
    sed擅长文本替换,这里我们可以直接在每行末尾追加内容:
sed 's/$/\tEcoRI/' input.txt > output.txt

$表示匹配每行的末尾,s/$/\tEcoRI/就是在每行最后插入制表符和EcoRI。如果要直接修改原文件,加-i参数就行:

  • Linux系统:sed -i 's/$/\tEcoRI/' input.txt

  • macOS系统:sed -i '' 's/$/\tEcoRI/' input.txt(注意空引号,是macOS sed的特殊要求)

  • 用paste命令(适合灵活扩展场景)
    这个方法思路是先生成一个和原文件行数一致、每行都是EcoRI的临时列文件,再和原文件合并:

# 生成和原文件行数相同的EcoRI列
yes EcoRI | head -n $(wc -l < input.txt) > temp_col.txt
# 用制表符合并原文件和临时列
paste input.txt temp_col.txt > output.txt
# 清理临时文件
rm temp_col.txt

虽然步骤多一点,但如果之后需要添加的列内容有变化,这个方法的扩展性会更好。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 03:45:23