我用逗号(,)
分隔文件word1,word2,word3,word4
word80,word81,word82
这就是我想要的
word1,word2
word80,word81
所以,我每行只需要两个单词,我不在乎其余的,包括第二个逗号(,)
word3 word4 word82可以删除或简单方法,删除条件行;逗号不止一个
答案 0 :(得分:7)
:%s/^\([^,]+,[^,]+\),.*$/\1/
您不需要在vi
中执行此操作,但其他两种解决方案
awk -F, '{print $1 "," $2}'
和
cut -d, -f1-2
答案 1 :(得分:3)
sed
的东西:
$ sed 's/\(^[^,][^,]*,[^,][^,]*\).*/\1/' $file_name
第一个和最后一个怎么样?使用awk
:
$ awk '{print $1 "," $NF}` $file_name
答案 2 :(得分:0)
$ cat input | cut -d, -f1,2
word1,word2
word80,word81
您没有指定语言,因为您将其标记为bash,我使用它。