回答編集履歴
1
test
CHANGED
@@ -1,23 +1,12 @@
|
|
1
|
-
|
1
|
+
awk '!x[$0]++' file.txt
|
2
|
-
|
3
|
-
|
4
2
|
|
5
3
|
このコマンドを使ってください。
|
6
4
|
|
7
|
-
|
8
|
-
|
9
5
|
xは連想配列で、Awkがそこにファイルの行すべてをパスします。
|
10
|
-
|
11
6
|
ある行が配列に存在しなければ、x[$0]がfalseと評価します。
|
12
|
-
|
13
7
|
!はロジカルなNOT演算子で、falseをtrueに逆転させます。
|
14
|
-
|
15
8
|
Awkはその式がtrueと評価した行をプリントします。
|
16
|
-
|
17
9
|
++はxをインクリメントし、行が見つからなければx[$0] == 1、また見つからなければx[$0] == 2となっていきます。
|
18
10
|
|
19
|
-
|
20
|
-
|
21
11
|
また、0と" "(空のstring)だけはtrueと評価されません。
|
22
|
-
|
23
12
|
重複した行がxにある場合、!x[$0]がfalseと評価するためアウトプットには書かれません。
|