uniq在达尔文炮弹上的奇怪行为

时间:2011-04-18 06:36:31

标签: shell darwin

我在linux机器上的许多shell脚本中使用了'uniq -d -c file',它确实有效。 在我的MAC(安装了开发人员工具的OS X 10.6.7)上似乎不起作用:

$ uniq -d -c testfile.txt 
usage: uniq [-c | -d | -u] [-i] [-f fields] [-s chars] [input [output]]

如果有人能检查这件事会很好。

2 个答案:

答案 0 :(得分:6)

嗯,它就在Usage消息中。 [ -c | -d | -u]表示您可以使用一个这些可能性,而不是两个。

由于OSX基于BSD,您可以检查here或者,感谢Ignacio,更多Apple特定的here

如果您想获得类似的输出,可以使用:

do_your_thing | uniq -c | grep -v '^ *1 '

将删除所有那些计数为1的合并行。

答案 1 :(得分:1)

您可以尝试此awk解决方案

awk '{a[$0]++}END{for(i in a)if(a[i]>1){ print i ,a[i] } }' file