|
| finde indentiske filer Fra : Mikael Hansen |
Dato : 02-08-04 07:55 |
|
Har opdaget at jeg formodentlig har en samling filer jeg nok har 2-3
kopier af.
Er der nogen der kender et script eller lignende, der kan gennemsøge en
del af filsystemet, og lave en bit for bit sammenligning af filer med
indentisk filnavn, og lave en tekstfil med path til de indentiske filer,
så jeg lettere manuelt kan sortere ud i det?
fra udgangspunktet er der følgende tre biblioteker der skal gennemsøges
(med alle underbiblioteker)
hde5/
hde9/
Mikael/
Der er igen af disse biblioteker der kan antages at være reference, som
man alene kan tage udgangspunkt i.
Resultatet behøves ikke at blive filtreret for evt. dobbelt resultater.
Scriptet tænkes kørt på en "Mandrake 9.1 PPC" som et baggrundsjob den
bare kan få lov et tygge på til den er færdig, det behøves ikke at være
hastighedsoptimeret, bare simpelt.
m.v.h. Mikael
| |
Peter Makholm (02-08-2004)
| Kommentar Fra : Peter Makholm |
Dato : 02-08-04 08:00 |
|
Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
> Er der nogen der kender et script eller lignende, der kan gennemsøge
> en del af filsystemet, og lave en bit for bit sammenligning af filer
> med indentisk filnavn, og lave en tekstfil med path til de indentiske
> filer, så jeg lettere manuelt kan sortere ud i det?
Prøv at se på fdupes. Det findes i Debian, mon ikke også det findes i
Mandrake?
--
Peter Makholm | What if:
peter@makholm.net | Tanenbaum had convinced Linus that his
http://hacking.dk | operating system really was obsolete
| |
Mikael Hansen (02-08-2004)
| Kommentar Fra : Mikael Hansen |
Dato : 02-08-04 08:36 |
|
Peter Makholm wrote:
> Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
>
>
>>Er der nogen der kender et script eller lignende, der kan gennemsøge
>>en del af filsystemet, og lave en bit for bit sammenligning af filer
>>med indentisk filnavn, og lave en tekstfil med path til de indentiske
>>filer, så jeg lettere manuelt kan sortere ud i det?
>
>
> Prøv at se på fdupes. Det findes i Debian, mon ikke også det findes i
> Mandrake?
>
>
Nej, den er efter hvad jeg lige kan se ikke med, men jeg har fundet den
som en tar.gz, så kan man jo lave den selv, men evt. andre forslag er
velkomne.
m.v.h. Mikael
| |
Mikael Hansen (03-08-2004)
| Kommentar Fra : Mikael Hansen |
Dato : 03-08-04 23:30 |
|
Mikael Hansen wrote:
> Peter Makholm wrote:
>
>> Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
>>
>>
>>> Er der nogen der kender et script eller lignende, der kan gennemsøge
>>> en del af filsystemet, og lave en bit for bit sammenligning af filer
>>> med indentisk filnavn, og lave en tekstfil med path til de indentiske
>>> filer, så jeg lettere manuelt kan sortere ud i det?
>>
>>
>>
>> Prøv at se på fdupes. Det findes i Debian, mon ikke også det findes i
>> Mandrake?
>>
>>
>
> Nej, den er efter hvad jeg lige kan se ikke med, men jeg har fundet den
> som en tar.gz, så kan man jo lave den selv, men evt. andre forslag er
> velkomne.
>
> m.v.h. Mikael
>
Fik lavet en liste med denne ved at sende outputtet til en fil, ellers
sender den det til skærmen. Men filen skal lige renses for en masse
skrammel i starten hvor programmet åbenbart giver meddelelse om hvor
langt den er nået. tak for tippet.
m.v.h. Mikael
| |
Peter Dalgaard (03-08-2004)
| Kommentar Fra : Peter Dalgaard |
Dato : 03-08-04 23:40 |
|
Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
> Mikael Hansen wrote:
> > Peter Makholm wrote:
> >
> >> Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
> >>
> >>
> >>> Er der nogen der kender et script eller lignende, der kan gennemsøge
> >>> en del af filsystemet, og lave en bit for bit sammenligning af filer
> >>> med indentisk filnavn, og lave en tekstfil med path til de indentiske
> >>> filer, så jeg lettere manuelt kan sortere ud i det?
> >>
> >>
> >>
> >> Prøv at se på fdupes. Det findes i Debian, mon ikke også det findes i
> >> Mandrake?
> >>
> >>
> > Nej, den er efter hvad jeg lige kan se ikke med, men jeg har fundet
> > den som en tar.gz, så kan man jo lave den selv, men evt. andre
> > forslag er velkomne.
> > m.v.h. Mikael
> >
>
> Fik lavet en liste med denne ved at sende outputtet til en fil, ellers
> sender den det til skærmen. Men filen skal lige renses for en masse
> skrammel i starten hvor programmet åbenbart giver meddelelse om hvor
> langt den er nået. tak for tippet.
Er der egentlig noget here der ikke ku' have være ordnet med
diff -rqs dir1 dir2 | grep 'identical$'
Bare en tanke...
--
O__ ---- Peter Dalgaard Blegdamsvej 3
c/ /'_ --- Dept. of Biostatistics 2200 Cph. N
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907
| |
Mikael Hansen (04-08-2004)
| Kommentar Fra : Mikael Hansen |
Dato : 04-08-04 00:08 |
|
Peter Dalgaard wrote:
> Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
>
>
>>Mikael Hansen wrote:
>>
>>>Peter Makholm wrote:
>>>
>>>
>>>>Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
>>>>
>>>>
>>>>
>>>>>Er der nogen der kender et script eller lignende, der kan gennemsøge
>>>>>en del af filsystemet, og lave en bit for bit sammenligning af filer
>>>>>med indentisk filnavn, og lave en tekstfil med path til de indentiske
>>>>>filer, så jeg lettere manuelt kan sortere ud i det?
>>>>
>>>>
>>>>
>>>>Prøv at se på fdupes. Det findes i Debian, mon ikke også det findes i
>>>>Mandrake?
>>>>
>>>>
>>>
>>>Nej, den er efter hvad jeg lige kan se ikke med, men jeg har fundet
>>>den som en tar.gz, så kan man jo lave den selv, men evt. andre
>>>forslag er velkomne.
>>>m.v.h. Mikael
>>>
>>
>>Fik lavet en liste med denne ved at sende outputtet til en fil, ellers
>>sender den det til skærmen. Men filen skal lige renses for en masse
>>skrammel i starten hvor programmet åbenbart giver meddelelse om hvor
>>langt den er nået. tak for tippet.
>
>
> Er der egentlig noget here der ikke ku' have være ordnet med
>
> diff -rqs dir1 dir2 | grep 'identical$'
>
> Bare en tanke...
>
Den godtager tilsyneladende ikke at jeg fra mit udgangspunkt har 3
biblioteker at sammenligne filer fra.
$ diff -rqs hde5/ hde9/ Mikael/ | grep 'identical$'
diff: ekstra operant 'Mikael/'
diff: Prøv 'diff --help' for mere information.
m.v.h. Mikael
| |
Christian Laursen (02-08-2004)
| Kommentar Fra : Christian Laursen |
Dato : 02-08-04 09:08 |
|
Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
> Er der nogen der kender et script eller lignende, der kan gennemsøge
> en del af filsystemet, og lave en bit for bit sammenligning af filer
> med indentisk filnavn, og lave en tekstfil med path til de indentiske
> filer, så jeg lettere manuelt kan sortere ud i det?
>
> fra udgangspunktet er der følgende tre biblioteker der skal
> gennemsøges (med alle underbiblioteker)
>
>
> hde5/
> hde9/
> Mikael/
find hde5 hde9 Mikael -type f | xargs md5sum | sort | uniq -dD -w 32
--
Christian Laursen
| |
Mikael Hansen (02-08-2004)
| Kommentar Fra : Mikael Hansen |
Dato : 02-08-04 11:27 |
|
Christian Laursen wrote:
> Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
>
>
>>Er der nogen der kender et script eller lignende, der kan gennemsøge
>>en del af filsystemet, og lave en bit for bit sammenligning af filer
>>med indentisk filnavn, og lave en tekstfil med path til de indentiske
>>filer, så jeg lettere manuelt kan sortere ud i det?
>>
>>fra udgangspunktet er der følgende tre biblioteker der skal
>>gennemsøges (med alle underbiblioteker)
>>
>>
>>hde5/
>>hde9/
>>Mikael/
>
>
> find hde5 hde9 Mikael -type f | xargs md5sum | sort | uniq -dD -w 32
>
Laver denne en textfil ?
kan man få en kort forklaring til hvordan den virker? (kun det mest
grundlæggende)
m.v.h. Mikael
| |
Steen Suder, privat (02-08-2004)
| Kommentar Fra : Steen Suder, privat |
Dato : 02-08-04 11:52 |
|
Mikael Hansen wrote:
> Christian Laursen wrote:
>
>> Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
>>
>>
>>> Er der nogen der kender et script eller lignende, der kan gennemsøge
>>> en del af filsystemet, og lave en bit for bit sammenligning af filer
>>> med indentisk filnavn, og lave en tekstfil med path til de indentiske
>>> filer, så jeg lettere manuelt kan sortere ud i det?
>>>
>>> fra udgangspunktet er der følgende tre biblioteker der skal
>>> gennemsøges (med alle underbiblioteker)
>>>
>>>
>>> hde5/
>>> hde9/
>>> Mikael/
>>
>>
>>
>> find hde5 hde9 Mikael -type f | xargs md5sum | sort | uniq -dD -w 32
>>
> Laver denne en textfil ?
Nej, men sæt "> textfil" på i enden, så er den hjemme.
> kan man få en kort forklaring til hvordan den virker? (kun det mest
> grundlæggende)
* 'find'-kommandoen finder egentlige filer i hde5, hde9 og
Mikael-bibliotekerne.
* For hver fil fundet (kommandoen xargs), laver md5sum en checksum på filen.
* Der sorteres med 'sort' aht. næste kommando.
* 'uniq' finder dubletterne med -dD (alle dubletter printes) og '-w 32'
sørger for at der kun sammenlignes på de første 32 tegn, hvilket vil
sige selve checksummen.
Sådan cirka....
Btw. så sørger en | (pipe) for at output fra en kommando anvendes som
input til næste kommando.
--
Steen Suder
Prøv at forestille dig, at du er en anden, og læs så din artikel igennem
inden du sender den. Alle har interesse i, at du staver og formulerer
dig, så godt du kan. På den måde forstås det lettere, hvad du skriver.
| |
Mikael Hansen (03-08-2004)
| Kommentar Fra : Mikael Hansen |
Dato : 03-08-04 23:37 |
|
Steen Suder, privat wrote:
<snip>
>>> find hde5 hde9 Mikael -type f | xargs md5sum | sort | uniq -dD -w 32
>>>
hmm. det kan jeg ikke få til at virke
$ nohup find hde5 hde9 Mikael -type f | xargs md5sum | sort | uniq -dD
-w 32 > list.txt &
[1] 20933
$ xargs: uafbalanceret enkelt citationstegn
m.v.h. Mikael
<snip>
| |
Henrik Christian Gro~ (04-08-2004)
| Kommentar Fra : Henrik Christian Gro~ |
Dato : 04-08-04 08:58 |
|
Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> writes:
> $ nohup find hde5 hde9 Mikael -type f | xargs md5sum | sort | uniq -dD
> -w 32 > list.txt &
> [1] 20933
> $ xargs: uafbalanceret enkelt citationstegn
Det lyder som om du har filnavne der indeholder apostroffer. Hvis du
absolut vil forfølge denne idé så prøv at tilføje et -print0 til finds
argumenter og -0 til xargs'.
..Henrik
--
if the user is truly dumber than you are, he will defeat you by doing
something else so dumb that it never even occurred to you.
-- Craig Dickson on debian.devel
| |
Thomas S. Iversen (02-08-2004)
| Kommentar Fra : Thomas S. Iversen |
Dato : 02-08-04 20:31 |
|
On 2004-08-02, Mikael Hansen <mikael.hansen@DELETE.post.cybercity.dk> wrote:
> Har opdaget at jeg formodentlig har en samling filer jeg nok har 2-3
> kopier af.
>
> Er der nogen der kender et script eller lignende, der kan gennemsøge en
> del af filsystemet, og lave en bit for bit sammenligning af filer med
> indentisk filnavn, og lave en tekstfil med path til de indentiske filer,
> så jeg lettere manuelt kan sortere ud i det?
#!/bin/sh
OUTF=rem-duplicates.sh; ESCSTR="s/([^a-zA-Z0-9\-\.\/_])/\\\\\1/g";
SUM="dummy"; echo "#! /bin/sh" > $OUTF; find -type f | sed -r "$ESCSTR" | while read x; do md5sum "$x
"; done | sort -k 1,32 | uniq -w 32 -d --all-repeated | while read y; do
NEW=echo "$y-dummy" | sed "s/ .*$//"; if [ $NEW != $SUM ]; then echo "" >>
$OUTF; fi; SUM="$NEW
"; echo "$y" | sed -r "s/^[0-9a-f]*(\\ )*//;$ESCSTR;s/(.+)/#rm \1/" >>
$OUTF; done; chmod a+x $OUTF; ls -l $OUTF
På en linie.
Thomas
| |
|
|