2

我有文本文件:

abandonovať
abandonovať, neabandonovať
abandonovať, abandonujem
abandonovať, abandonuješ
abandonovať, abandonuje
abandonovať, abandonuje
abandonovať, abandonuje
abandonovať, neabandonujem
abandonovať, neabandonuješ

我想删除每个重复的单词。它看起来像这样:

abandonovať
neabandonovať
abandonujem
abandonuješ
abandonuje
neabandonujem
neabandonuješ

有人知道如何在 GREP、AWK 中制作它...?

4

3 回答 3

4

这是一种使用方法GNU awk

awk -F "[, ]" '{ for(i=1;i<=NF;i++) if (!a[$i]++ && $i != "") print $i }' file

结果:

abandonovať
neabandonovať
abandonujem
abandonuješ
abandonuje
neabandonujem
neabandonuješ
于 2012-11-24T15:52:51.360 回答
4

您可以尝试使用:

grep -o '\w*' a.txt | sort | uniq

其中 a.txt 是您的文件。

于 2012-11-24T15:54:28.897 回答
0

谢谢你们,在 GREP 中它可以工作,但它按字母对单词进行排序。在 AWK 中它也可以工作,但我还有一个小问题。我的文本文件是:

abandonovať
abandonovať, neabandonovať
abandonovať, abandonujem
.
.
.

如果我在 awk 中输入您的代码,我的结果是:

abandonovať
abandonovať,
neabandonovať
abandonujem
.
.
.

一个词有两次。一次带“,”,一次不带“,”。

于 2012-11-26T20:02:25.683 回答