Eu estive pensando em adicionar essa opção a rmlint por um tempo (mas ninguém a solicitou até agora). Eu criei uma ramificação de teste que agora tem essa opção ( link ).
Se você quiser experimentá-lo, precisará instalar da seguinte forma:
- Instale dependências se ainda não as tiver:
$ sudo apt-get install git scons python3-sphinx python3-nose gettext build-essential
$ sudo apt-get install libelf-dev libglib2.0-dev libblkid-dev libjson-glib-1.0 libjson-glib-dev
- Pegue a fonte da ramificação de teste:
$ cd ~
$ git clone -b feature/uniques https://github.com/SeeSpotRun/rmlint.git
$ cd rmlint/
- Compile e (opcionalmente) instale:
$ scons config
$ scons DEBUG=1 -j4
$ sudo scons DEBUG=1 -j4 --prefix=/usr install
$ # (if you skip the install step then replace 'rmlint' with './rmlint' below)
- Encontre arquivos exclusivos (não excluirá nada):
$ # this will display unique files on your screen:
$ rmlint -o uniques path/to/your/files
$ # or use either of the following to write a list of unique files to unique.txt:
$ rmlint -o uniques:unique.txt path/to/your/files
$ rmlint -o uniques path/to/your/files > unique.txt
Se você quiser uma lista de arquivos em dir2
que não tenham um gêmeo em dir1
, você pode marcar dir2 usando //
como separador e adicione -k
(ou --keep-all-tagged
) ao comando:
$ rmlint -k -o uniques dir1 // dir2
(Note que se houver dois arquivos idênticos em dir2, mas eles não tiverem uma cópia em dir1, eles ainda serão listados como "únicos" no último exemplo)
- Deixe-nos saber como foi. Qualquer problema ou sugestão deve ser respondido aqui ou em nosso registro de problemas
Lembre-se de que, nos exemplos acima, se você tiver dois arquivos com nomes diferentes, mas com o mesmo conteúdo, eles não serão marcados como exclusivos. Se você fizer desejar que eles sejam sinalizados como exclusivos, adicione -b
ou --match-basename
à linha de comando.
Em relação às somas md5, etc: rmlint usa SHA-1 por padrão, que é cerca de 4 bilhões de vezes mais strong do que md5. Você pode fazer upgrade para SHA-512 adicionando -p
à linha de comando, ou você pode fazer uma comparação byte a byte, adicionando -pp
(embora isto consuma um pouco mais de RAM).