• Wieder einmal haben uns unsere Apfeltalker tolle Fotos zur Abstimmung eingesandt. Welches ist Euer Favorit? Stimmt mit ab! Hier geht es zur Abstimmung --> Klick
  • Es ist bereits Apfeltalk-Tradition und wir möchten sie auch in diesem Jahr fortsetzen: Unser Apfeltalk-Weihnachtslogo-Wettbewerb hat begonnen! Gestaltet für uns das Weihnachtsbanner, das im Monat Dezember bis zum Weihnachtsfest unsere Webseite schmücken soll. Lasst Eurer Kreativität freien Lauf! Hier geht es zum Wettbewerb --> Klick

Ordner umbennenen: 4.6.2 nach 4_6_2

_linx_

Kleiner Weinapfel
Registriert
04.01.09
Beiträge
1.125
Ich habe die CD des Fackkunde Metall (vllt kennt das jemand von euch), auf meine Mac kopiert.

Dies sind Ordner, nach Kapitel geordnet, und darin sind die Bilder, die im Buch enthalten sind. Das ganze möchte ich nicht in iPhoto integrieren, sondern sie so auf der Festplatte belassen.

Nun macht sich MobileMe einen Spass daraus, das ganze nicht mit meiner iDisk synchronisieren zu wollen. Synchronisieren will ich das, weil ich meine ganzen Dokumente auf die iDisk verlagern möchte.

Hier mal als Exempel ein Beispiel der Struktur
1
- 1.1
-- 1.1.1
--- Bild.png
- 1.2
- 1.3
2
...


Gibt es eine Möglichkeit, diese Ordner rekursiv von z.B. 4.6.2 nach 4_6_2 umzubenennen?
 
Eine umständliche Möglichkeit ginge über Name Mangler. Da gibt es eine Replace-Funktion - umständlich allerdings, da man wohl alle Ordner markieren müsste (was aber recht schnell geht, wenn man in der Listendarstellung alle aufklappt, mit cmd-mausklick (glaube ich) oder alt-mausklick auf das Dreieck beim obersten Ordner.
Dann noch zuerst .png in was anderes ändern (und nach getaner Aktion zurück) und dann alle Punkte durch Striche ersetzen.
Eleganter geht es sicher übers Terminal, da muß ich aber passen, rekursiv und Wildcards, das ist mir eine Nummer zu hoch.
 
Gibt es eine Möglichkeit, diese Ordner rekursiv von z.B. 4.6.2 nach 4_6_2 umzubenennen?
Code:
[SIZE="-1"]fldr=[COLOR="Blue"]"/Pfad/zum Stammordner/hier einsetzen"[/COLOR];

list="$( find -dx "$fldr" -type d )";
IFS=$'\n';
for item in $list; do
  IFS=$' \t\n';
  old="$( basename "$item" )";
  new="${old//./_}";
  pushd "$( dirname "$item" )" &>/dev/null;
  mv "$old" "$new";
  popd &>/dev/null;
done; IFS=$' \t\n';
[/SIZE]
 
Zuletzt bearbeitet:
Danke vielmals. Leider bin ich aber in solchen Dingen nicht sooo begabt. Kann ich das 1:1 ins Terminal kopieren?
 
Danke vielmals. Leider bin ich aber in solchen Dingen nicht sooo begabt. Kann ich das 1:1 ins Terminal kopieren?

ich glaube das ist ein apple script, das du mit dem script editor in Applications/Apple Script findest ausführen
 
Danke vielmals. Leider bin ich aber in solchen Dingen nicht sooo begabt. Kann ich das 1:1 ins Terminal kopieren?
Ja. Musst halt nur in der ersten Zeile... klar, oder?

(Die Gänsefüsschen um den Namen sind erforderlich, wenn Leerzeichen enthalten sind. Aber: Wenn du den Ordner einfach mit Drag&Drop aus dem Finder einfügst, lasse sie weg, denn das wird dann automatisch korrekt gehandhabt. Die folgenden Zeilen übernimmst du in jedem Fall unverändert.)
 
Ist nur für Dateie ... Wie so jedes andere Programm.

so kann man das nicht sagen....

"a better finder rename" kann das schon siet os9 zeiten.

Das Apple Script begreife ich schon. Lag nur daran, dass ich mir von PHP klar ist, nach der ersten Zeile zu wissen, um was es geht (<?php ...).

aber wenn du mit apple script oder dem automator zusammen kommst, wirst du es nicht brauchen.
mit php hat das allerdings nicht viel zu tun.
ein shellscript hat dir der rastafari schon geschrieben....falls du auf der suche bist ;-)
 
Nur kostet dieses a better finder rename Geld, und für eine einmalige Aktion gib ich kein Geld aus.

In dem Fall werde ich das Shellskript ausprobieren. Und das mit dem PHP hast du falsch verstanden. Es ging mir dabei darum, dass du bei php-Dateien siehst, dass es PHP ist, weil ja <?php in der ersten Zeile steht. Und bei diesem Skript sieht man das ja nicht, und da konnte ich es nicht zuordnen, da ich ja kein Shell kann.


edit: Das Shell funktionierte problemlos - danke.