3

持っていないビジーボックス システムを持っていuniqます。重複した行の一意のリストを生成したいと思います。

uniqエミュレートされたプレーンは次のようにawkなります。

sort <filename> | awk '!($0 in a){a[$0]; print}'

達成するためにどのように使用できますawkか(またはsed、それについては、ではありません):perl

sort <filename> | uniq -d
4

3 に答える 3

6

busyboxシステムでは、バイトを保存する必要がある場合があります。;-)

awk ++a[\$0]==2
于 2012-06-04T13:36:50.377 に答える
3

これを行うことができます(ソートする必要はありません):

awk '{++a[$0]; if(a[$0] == 2) print}'
于 2012-06-04T13:14:31.533 に答える
0

これはあなたのために働くかもしれません:

# make some test data
seq 25 >/tmp/a
seq 3 3 25 >>/tmp/a
seq 5 5 25 >>/tmp/a
# run old command
sort -n /tmp/a | uniq -d
3
5
6
9
10
12
15
18
20
21
24
25
# run sed command 
sort -n /tmp/a | 
sed ':a;$bb;N;/^\([^\n]*\)\(\n\1\)*$/ba;:b;/^\([^\n]*\)\(\n\1\)*/{s//\1/;P};D' 
3
5
6
9
10
12
15
18
20
21
24
25
于 2012-06-04T15:33:54.610 に答える