디렉토리에 많은 파일이 있으며 파일이 모두 고유한지 확인하고 싶습니다. : 단순 들어, 나는 세 개의 파일이 있다고 가정 해 보자 foo.txt, bar.txt하고 baz.txt. 이 루프를 실행하면 서로 검사합니다.
$ for f in ./*; do for i in ./*; do diff -q "$f" "$i"; done; done
Files bar.txt and baz.txt differ
Files bar.txt and foo.txt differ
Files baz.txt and bar.txt differ
Files baz.txt and foo.txt differ
Files foo.txt and bar.txt differ
Files foo.txt and baz.txt differ
내가 다루고 싶은 수백 개의 파일들에 대해, 이것은 꽤 읽을 수 없게 될 것이다. 이 파일 목록에 더 좋을 거라 할 경기를하고 나는 빨리 목록을 살펴 파일은 자신을 일치되어 있는지 확인 할 수 있습니다. 맨 페이지에서 -s옵션이이를 달성 할 것이라고 생각했을 것입니다.
$ for f in ./*; do for i in ./*; do diff -s "$f" "$i"; done; done
Files bar.txt and bar.txt are identical
Files baz.txt and baz.txt are identical
Files foo.txt and foo.txt are identical
... 그러나, 사실 그것은 또한 다른 모든 파일의 전체 내용을 인쇄합니다. 이 동작을 억제하는 방법이 있습니까? 그래서 위의 동작 만 얻습니까?
또는 이것을 달성 할 수있는 다른 도구가 있습니까?