0

我有一个文件,其中包含三个分隔符';' - 如果第三个分隔符后没有文字,我需要删除该行。任何想法如何做到这一点?

blahDI-blah.john;fdfds;gfdg;gdfgf
DNSK-ECAA.paul;ghdfdgd;fdsd;

仅退货

blahDI-blah.john;fdfds;gfdg;gdfgf

一如既往的感谢!史蒂夫。

4

3 回答 3

1

使用sed

sed '/;$/d' file

使用grep

grep -v ';$' file

使用awk(另一种变体在 Guru 和 Jotne 的 ans 中)

awk '/;$/ {next} 1' file

以上所有内容都将删除以;

输出:

blahDI-blah.john;fdfds;gfdg;gdfgf
于 2013-10-19T09:39:16.600 回答
1

单程:

awk -F";" '$4' file

这将打印第四列不为空的那些行。

于 2013-10-19T09:28:05.753 回答
1

其他awk

awk '!/;$/' file
blahDI-blah.john;fdfds;gfdg;gdfgf
于 2013-10-19T09:46:35.403 回答