首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用awk删除分号后的所有文本。

使用awk删除分号后的所有文本。
EN

Stack Overflow用户
提问于 2015-07-28 14:08:24
回答 2查看 290关注 0票数 2

我正试图使用awk来解析下面的输出,以删除每行分号后的所有文本。谢谢:)。

代码语言:javascript
复制
awk -F '\t' 'BEGIN { OFS = FS } NR != 1 { sub(/; [^ ]*$/, "", $NF) } 1' file1.txt >: result.txt

file1.txt

代码语言:javascript
复制
chr1 40539722 40539865 PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1 
chr1 40542503 40542595 PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1 
chr1 40544221 40544340 PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1 
chr1 40546058 40546169 PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1;PPT1

理想的result.txt

代码语言:javascript
复制
chr1 40539722 40539865 PPT1
chr1 40542503 40542595 PPT1
chr1 40544221 40544340 PPT1
chr1 40546058 40546169 PPT1
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-28 14:14:58

就这么做有什么不对吗?

代码语言:javascript
复制
awk -F ';' '{ print $1 }'

?看起来简单多了。

票数 3
EN

Stack Overflow用户

发布于 2015-07-28 14:20:30

您希望cut文件并在;-separated值上显示第一个字段。那么,如何使用cut本身呢?

代码语言:javascript
复制
$ cut -d';' -f1 file
chr1 40539722 40539865 PPT1
chr1 40542503 40542595 PPT1
chr1 40544221 40544340 PPT1
chr1 40546058 40546169 PPT1

-d设置分隔符,-f指示要打印哪些字段。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31678776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档