User:Vkolesni
From ICO wiki
Quest8
#!/bin/bash
#Autor: Vladimir Kolesnik, vkolesni@itcollege.ee
#Versioon 0.5
#Antud skript otsib etteantud kataloogist ühesuguseid faile. Failide võrdlemine toimub md5sum tasandil.
#Skript leiab ja kuvab kõikide ühusuguste failide asukoha ja nimed.
#Skripti kasutamiseks liiguge kataloogise, kus on vaja otsida ühesuguseid faile.
#kontrollib, kas on piisavalt õigusi skripti käivitamiseks
if [ $UID -ne 0 ]; then
echo "Käivita skripti $(basename $0) juurkasutaja õigustes: sudo"
exit 1
fi
#Otsimine ainult faile (-type f), mida ei ole tühjad(-not -empty), ning määratleme print formati ("%s\n")
find -not -empty -type f -printf "%s\n" |
#Sorteerime descending (reverse) numeric järgi
sort -rn |
#Ainult printimine dublicated unikaalsed faile
uniq -d |
#Kasutame käsu "xargs" selleks, et asendama ("I") {} argumenti listiga
xargs -I{} -n1 find -type f -size {}c -print0 |
#Võtame ainult md5summi, mis ei sisalda komasi ega tühikuid ("-0")
xargs -0 md5sum |
#Sorteerimine
sort |
#Võtame ainult 32 numbri ("-w32") võrdlemiseks
uniq -w32 --all-repeated=separate