从https://unix.stackexchange.com/a/277707/674
find . ! -empty -type f -exec md5sum {} + | sort | uniq -w32 -dD
可以查找当前目录下的重复文件。
是什么-dD
意思uniq
?我在联机帮助页中看到了-d
和的含义-D
,但不确定它们一起使用时的含义。谢谢。
答案1
总长DR 最重要的是,它们一起使用时没有任何作用;-dD
与 相同-D
。
研究
如果您查看uniq.c
命令的 case/switch 逻辑,您可以第一手看到这一点:
case 'd':
output_unique = false;
output_option_used = true;
break;
case 'D':
output_unique = false;
output_later_repeated = true;
if (optarg == NULL)
delimit_groups = DM_NONE;
else
delimit_groups = XARGMATCH ("--all-repeated", optarg,
delimit_method_string,
delimit_method_map);
output_option_used = true;
break;
这段代码的结构方式,如果-dD
设置了其中之一,则ouput_unique
设置为 false;但更重要的是,output_later_repeated
设置为true。
一旦设置了该条件 ,除了与 相同的输出之外,output_later_repeated
没有其他可行的方法。-dD
-D
顺便说一句,Computerhope 手册页有一个更好的表格来解释-d
和-D
开关。
参考
答案2
毫无uniq -dD
意义 - 它相当于uniq -D
.和都会产生相同的结果,因为-dD
的输出集是 的子集。-D
-d
-D