Script que verifica se existem arquivos repetidos em dois diretórios
Publicado por Leandro Santiago 10/11/2006
[ Hits: 8.818 ]
Homepage: http://leandrosan.wordpress.com
É meu primeiro script, ou seja, está bem tosco, e como se pode ver não serve pra muita coisa, mas tem lá suas utilidades...
Ele verifica se dois arquivos são o mesmo baseado no nome dos arquivos e no md5sum dos mesmos. Ou seja, arquivos iguais, mas com nomes diferentes serão considerados iguais.
Funciona assim:
# ./repetidos dir_de_destino arq_de_log (este último opcional)
Hey, eu ainda estou aprendendo a usar o case!
#!/bin/bash # Escrito por Leandro Santiago da Silva # e-mail: leandrosansilva@gmail.com # Críticas, sugestões, enviarem para esse e-mail. # Programa que verifica se você tem um mesmo arquivo em vários diretórios # A checagem é feita via md5sum, o que faz com que mesmo que arquivos diferentes tenham o mesmo nome, serem ainda sim considerados diferentes # É possível jogar a lista dos arquivos repetidos num arquivo de log. # Mais informações, tente # ./repetidos --help # ## A função echos eu retirei do programa funcoeszz (http://www.funcoeszz.net) echos(){ echo -e "{FONTE}33[36;1m$*"; echo -ne "{FONTE}33[m" } if [ -z $1 ]; then echo echo "Uso deste programa:" echo echos "$0 diretório-destino " echo echo "Mais informações, digite $0 --help" echo exit fi if [ $1 = '--help' ]; then echo echo "Uso deste programa:" echo echos "$0 diretório-destino " echos "$0 diretório-destino arquivo_de_log" echo echo "Escrito por Leandro Santiago da Silva" echo echo "leandrosansilva@gmail.com" echo exit fi if [ $1 = '--version' ]; then echo echos "Versão 0.0.0.0.0.1-beta" echos exit fi for ARQUIVO in * ; do if [ -e $1/$ARQUIVO 2> /dev/null ]; then if [ $( md5sum $ARQUIVO 2> /dev/null | cut -f1 -d' ') = $( md5sum $1/$ARQUIVO 2> /dev/null | cut -f1 -d' ' ) ]; then echos $ARQUIVO if [ ! -z $2 ]; then echo $ARQUIVO >> $2 fi fi fi done
Menu em formato texto simples em BASH script feito com comando select
Baixa e instala o Real Media para Linux
Kernel ganha novos linters Rust e distros avançam com recursos de IA
Firewire resiste, Bcachefs sai: destaques Linux do dia
Kernel 6.18 em foco, betas fervilhando e avanços em IA no Linux
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
Como instalar Counter-Strike 1.6? (8)
intervenção politica pode interver no Fedora Linux [RESOLVIDO] (14)
Como colocar atalho para uma pasta na área de trabalho do Ubuntu 24.04... (0)