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

如何使用UNIX cut命令排除文本文件中的指定列

实现cut反向功能(排除指定列)的替代方案

因为你的bash环境不支持cut --complement参数,下面是几个可行的替代方法:

1. 用awk直接提取目标列

awk处理文本列非常灵活,直接指定分隔符后输出需要的列就行:

awk -F', ' '{print $1 " ,  " $3}' your_file.txt
  • -F', ':把逗号加空格设成分隔符,刚好匹配你文件里的列分隔格式
  • $1 是第一列(比如"1"),$3 是第三列(比如"animal")
  • 用" , "连接两列,保证输出格式和你要的一致

2. 用sed正则删除第二列

通过正则精准匹配并去掉第二列的内容:

sed 's/, "[^"]*" , /,  /' your_file.txt
  • 正则, "[^"]*" , 会匹配每行里第二列的完整部分(比如, "cat" , )
  • 把匹配到的内容替换成, ,直接去掉第二列同时保留格式

3. cut+paste拼接列(适合偏好cut工具的场景)

如果一定要用cut,可以分别提取需要的列再拼起来:

paste -d' ,  ' <(cut -d',' -f1 your_file.txt | sed 's/ $//') <(cut -d',' -f3 your_file.txt | sed 's/^ //')
  • 先分别用cut提取第1、3列,再用sed去掉列前后的多余空格
  • 最后用paste把两列用指定分隔符拼起来

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 14:35:06