Pagina 2 di 3

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: domenica 18 gennaio 2015, 19:51
da burghy86
Scusate. Mo era sfuggito il topic. Aggiorno la prima pagina al dsm5.1

inviato con il mio topotalk

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: giovedì 15 settembre 2016, 12:30
da hsh
col 6 è uguale? mi servirebbe proprio sta funzione.... grazie a tutti!

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: giovedì 15 settembre 2016, 12:46
da Enry71
Funziona alla solita maniera

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: martedì 10 marzo 2020, 15:43
da erpomata
Ciao a tutti.
Non so se può essere utile a qualcuno ma personalmente mi ritrovo un'infinità di file duplicati e non sapendo come cancellarli (dovrei farlo a mano) mi sono creato una script che partendo dal report del synology (creato con le metodologia indicata sopra) mi cicla l'elenco e facendo un paragone con MD5 e SHA512SUM controlla se sono effettivamente uguali. Se lo solo ne cancella uno dei due. Ovviamente non posso decidere quale cancellare quindi se uno ha una sua organizzazione dei file poi se li deve ricontrollare però almeno non ha i duplicati.

Allego lo script, sicuramente migliorabile e personalizzabile. Accetto commenti.

Codice: Seleziona tutto

#!/bin/bash

if [ "$1" == "" ]; then
	echo "purge o scan"
	exit 1
fi

MD5=/bin/md5sum
SHA512SUM=/bin/sha512sum
RM=/bin/rm
TOUCH=/bin/touch

#Recupero tutti i file contenti il report dello scan del synology con data modifica successiva al file foo
while read line
do
/bin/7z x $line

INPUT=duplicate_file.csv
OLDIFS=$IFS
IFS=$'\t'
OLD_GROUP=""

MD5_1=""
MD5_2=""
SHA512SUM_1=""
SHA512SUM_2=""
FILE_1=""
FILE_2=""

FIRST_LINE=1
[ ! -f $INPUT ] && { echo "$INPUT file not found"; exit 99; }
	#Ciclo il file csv per recuperare l'elenco dei file probabilmente duplicati
	while read group sharedFolder file size modifiedTime 
	do
		if [ $FIRST_LINE != 1 ]; then

		file=${file//\"/''}.
		file=${file::-1}

			#echo "Group : $group"
			#echo "Shared Folder : $sharedFolder"
			#echo "File : $file"
			#echo "Size : $size"
			#echo "Modified Time : $modifiedTime"

			if [[ $OLD_GROUP == "" || $OLD_GROUP != "$group" ]]; then
				OLD_GROUP="$group"
				MD5_1=$($MD5 "$file" | awk '{ print $1 }')
				SHA512SUM_1=$($SHA512SUM "$file" | awk '{ print $1 }')
				FILE_1=$file
			else
				MD5_2=$($MD5 "$file" | awk '{ print $1 }')
				SHA512SUM_2=$($SHA512SUM "$file" | awk '{ print $1 }')
				FILE_2=$file
				
				#Controllo se l'MD5 e lo SHA512 siano uguali
				if [[ "$MD5_1" == "$MD5_2" && "$SHA512SUM_1" == "$SHA512SUM_2" ]]; then
					if [ "$1" == "purge" ]; then
						echo "Uguali. Rimuovo definitivamente $file"
						$RM "$file"
					else
						echo "Uguali -> $file"
					fi
				else
					if [ "$SHA512SUM_1" == "$SHA512SUM_2" ]; then
						echo "BO? -> $FILE_1 -- $FILE_2"
					else
						echo "Diversi -> $FILE_1 -- $FILE_2"
					fi
				fi
			fi
		else
			#Salto la riga con le intestazioni
			FIRST_LINE=0
		fi
		
		rm $INPUT
	done < $INPUT

	$RM duplicate_file.csv

done < <(find /volume1/Paolo/synoreport/synoreport/Duplicati -name duplicate_file.csv.zip -newer foo)

$TOUCH ./foo

#if [ "$1" == "purge" ]; then
#	$RM duplicate_file.csv.zip
#fi

if [ -f "$INPUT" ]; then
	$RM $INPUT
fi

IFS=$OLDIFS

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: martedì 10 marzo 2020, 16:36
da mikedepetris
Più che un commento ho una richiesta, mi piacerebbe uno script per creare una lista di tutti i file arricchita di MD5 e altri checksum, mi pare si possa ricavare facilmente da quello che hai scritto, magari lo hai già fatto?

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: martedì 10 marzo 2020, 16:46
da erpomata
Ciao, no non ho fatto uno script simile ma partendo da quello di può benissimo fare.
Ma a che servirebbe?

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: martedì 10 marzo 2020, 17:17
da mikedepetris
erpomata ha scritto: martedì 10 marzo 2020, 16:46 Ciao, no non ho fatto uno script simile ma partendo da quello di può benissimo fare.
Ma a che servirebbe?
ho moltissimi file archiviati da molti anni, e vorrei avere la possibilità di poter verificarne ad esempio una volta l'anno l'integrità, però periodicamente faccio ordine e li sposto per cui vorrei una lista dove poter risalire puntualmente all'MD5 o SH1 in caso di necessità

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: mercoledì 11 marzo 2020, 3:45
da erpomata
Scusa, ma una volta che hai stabilito se non sono integri che ci fai con l'md5 e lo sha?
Non puoi mica ricostruire il file partendo da quelle informazioni

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: mercoledì 11 marzo 2020, 8:52
da mikedepetris
erpomata ha scritto: mercoledì 11 marzo 2020, 3:45 Scusa, ma una volta che hai stabilito se non sono integri che ci fai con l'md5 e lo sha?
Non puoi mica ricostruire il file partendo da quelle informazioni
a quel punto so che devo cancellarli ed eventualmente recuperarli da backup

Re: [GUIDA] Trovare i file doppi sul NAS ed eliminarli

Inviato: mercoledì 11 marzo 2020, 9:12
da erpomata
ok comunque puoi partire da quello script per farlo.