finder: doppelte dateien suchen und löschen

Dieses Thema im Forum "Mac OS X" wurde erstellt von Bobs, 24.11.2005.

  1. Bobs

    Bobs Thread Starter MacUser Mitglied

    Beiträge:
    3.590
    Zustimmungen:
    34
    MacUser seit:
    02.11.2003
    tach zusammen :)
    so jetzt muss ich doch mal wieder nen thread erstellen.
    hab folgendes problem: ich hab versehentlich teile meiner jampacks mehrfach in garageband importiert, und die sind jetzt doppelt bis vierfach (fragt nicht ;) ) im loop-browser vorhanden, was nicht nur unübersichtlich ist, sondern auch noch extrem viel platz frisst.
    ich suche jetzt also ein tool oder ein script o.ä., mit dem ich den kompletten "APPLE LOOPS"-ordner nach doppelten dateien durchsuchen kann, im idealfall so, dass er auch 2 identische dateien in 2 verschiedenen ordnern erkennen kann.
    gibt es da ne lösung? manuell die loops durchzugehen kommt nicht in frage, da es mehrere tausend sind, und sich in verschiedenen ordnern befinden.

    ach ja, und wenn ich nen loop per finder lösche, ist der dann noch im garageband loop-browser, oder aktuallisiert sich das dann selbst?

    danke,

    bobs
     
  2. mactomtom

    mactomtom MacUser Mitglied

    Beiträge:
    605
    Zustimmungen:
    1
    MacUser seit:
    23.04.2003
    Auch ich hatte versehentlich Loops doppelt nach Garagebang importiert, aber zum Glück nur 4 Stück. Ich habe sie manuell gelöscht und war sehr erstaunt, die Doubletten nach dem Programmstart trotzdem noch im Browser zu finden. Das Problem läßt sich aber schnell lösen: werden die Doubletten im Browser ausgewählt, kommt ein Fehlerkommentar und dann sind die gelöschten Loops verschwunden.
     
  3. Bobs

    Bobs Thread Starter MacUser Mitglied

    Beiträge:
    3.590
    Zustimmungen:
    34
    MacUser seit:
    02.11.2003
    das ist schonmal gut zu wissen. aber wie gesagt kommt manuelles löschen bei mir nicht in frage, sind einfach zu viele dateien.
     
  4. Bobs

    Bobs Thread Starter MacUser Mitglied

    Beiträge:
    3.590
    Zustimmungen:
    34
    MacUser seit:
    02.11.2003
    na kommt schon, wo sind die scripter? :cool:
     
  5. doger

    doger MacUser Mitglied

    Beiträge:
    2.203
    Zustimmungen:
    171
    MacUser seit:
    11.11.2004
    http://learn.to/quote

    Folgendes funktioniert unter Linux wunderbar, sollte also auch unter Darwin einsetzbar sein.
    Code:
    sort -t " " -k 1,1 file*.txt > temp1.txt 
    sort -ut " " -k 1,1 file*.txt > temp2.txt 
    diff temp1.txt temp2.txt | grep '^<' | cut -c37- | while read file; do ls -l $file; done
    
    Bitter erst nach dem testen ls -l durch rm -f ersetzen.
     
    Zuletzt von einem Moderator bearbeitet: 25.11.2005
  6. Bobs

    Bobs Thread Starter MacUser Mitglied

    Beiträge:
    3.590
    Zustimmungen:
    34
    MacUser seit:
    02.11.2003
    ok das sieht doch schonmal nett aus, danke :)
    kannst du nem nixblicker noch erklären was die kommandos bewirken, und wie du das mit dem ersetzen meinst?
     
  7. doger

    doger MacUser Mitglied

    Beiträge:
    2.203
    Zustimmungen:
    171
    MacUser seit:
    11.11.2004
    Alles keine Hexerei.
    Sehr grobe Beschreibung der angegebenen Script Zeilen.

    Die beiden ersten sort Zeilen durchsuchen jeweils das System und schreiben das Ergebniss einmal in die Datei temp1.txt bzw. temp2.txt.
    Die zweite Zeile ist zugegebenermasen etwas komplexer der Befehl diff vergleicht zwei Dateien miteinander, der Befehl grep greift hier untersützend ein um die Zeilen direkt zu vergleichen. Cut sorgt sozusagen für die Trennung der Ergebnisse in den beiden Dateien und der letzte Rattenschwanz sagt einfach wie mit den Dateien zu verfahren ist. In diesem Beispiel wird das Ergebniss per ls -l am Bildschirm angezeigt. So das Du vorher kontrollieren kannst ob das Script auch das tut was es soll.
    Wenn das sichergestellt ist ersetzt Du ls -l durch rm -f, dadurch werden Dir die Dateien nicht mehr angezeigt sondern gelöscht.

    Genauere Infos über die eingesetzten Befehle kannst Du Dir auf der Shell per man <Befehlsname> anzeigen lassen.

    Das ganze sollte auch per Apple Script möglich sein, aber das ist eine andere Baustelle.
    Daher auch von mir der Aufruf Scripter wo seid Ihr? :)
     
  8. Bobs

    Bobs Thread Starter MacUser Mitglied

    Beiträge:
    3.590
    Zustimmungen:
    34
    MacUser seit:
    02.11.2003
    hey dodger,

    danke für die erklärung :)
    leider scheint der befehlt nicht ganz zu laufen, das terminal spuckt mir folgendes aus:

    Vigor10:~ bobs$ sort -t " " -k 1,1 file*.txt > temp1.txt
    sort: file*.txt: No such file or directory
    Vigor10:~ bobs$ sort -ut " " -k 1,1 file*.txt > temp2.txt
    sort: file*.txt: No such file or directory
    Vigor10:~ bobs$ diff temp1.txt temp2.txt | grep '^<' | cut -c37- | while read file; do ls -l $file; done

    ne idee?
     
  9. doger

    doger MacUser Mitglied

    Beiträge:
    2.203
    Zustimmungen:
    171
    MacUser seit:
    11.11.2004
    oops zwischen file und * gehört ein Leerzeichen und die Endung .txt änderst Du am besten in die Endung der Jampacks.
     
  10. Bobs

    Bobs Thread Starter MacUser Mitglied

    Beiträge:
    3.590
    Zustimmungen:
    34
    MacUser seit:
    02.11.2003
    ok jetzt motzt er zumindest nichtmehr rum, aber es passiert sonst irgendwie auch wenig :) hier mal das ergebnis:

    sort -t " " -k 1,1 file *.aif > temp1.txt
    > sort -ut " " -k 1,1 file *.aif > temp2.txt
    > diff temp1.txt temp2.txt | grep '^<' | cut -c37- | while read file; do ls -l $file; done

    liegen da jetzt irgendwo die dateien temp1.txt und temp2.txt rum? wenn ja wo? mit spotlight konnte ich sie nicht finden.
    sorry wenn ich dich nerv, aber ich hab noch nie irgendwas mit dem terminal gemacht bunny
     
Die Seite wird geladen...