"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Autormator: Ordner zählen?

retro 24.09.2009 - 14:20 1248 5
Posts

retro

computer says no
Avatar
Registered: Jul 2002
Location: XXII
Posts: 3260
Vielleicht kennt sich ja hier jemand mit Automator (Apple) aus, und weiß wie (ob) folgendes geht:

Ich möchte dem Automator einen Ordner zb. [Filme] angeben in diesem Ordner befinden sich wieder Ordner zb. [Regisseure] und die soll er zählen allerdings sollte der Ordner [Regisseure] weitere Unterordner enthalten dann sollte der diese mitzhählen dafür den Ordner [Regisseure] der die Unterorder enthält nicht mitzählen.

Klingt kompliziert, ist es für mich auch.

Dankeschön.

quilty

Ich schau nur
Avatar
Registered: Jul 2005
Location: 4202
Posts: 3017
D.h. du willst nur die einzelnen Enden des Verzeichnisbaums zählen und die Äste dazwischen nicht.

Da ich den/der/das Automator (Apple) nicht einmal kenne, kann ich zur Lösung nur ein Stichwort beitragen: Rekursion

prayerslayer

Oar. Mh.
Avatar
Registered: Sep 2004
Location: vorm Sucher
Posts: 4073
vielleicht hilfreich: http://www.macosxhints.com/article....060401140625207

//ups, zu schnell. da ist keine rekursion drin.

/// wennst das setTheCount durch ungefähr sowas (hab keinen mac):
Code:
on setItemCount(theFolder)
  tell application "Finder"
    set subFolders to (get folders of theFolder)
		set fileCount to (count(get files in folder theFolder))
		repeat with subFolder in subFolders
			set fileCount to fileCount+setItemCount(subFolder)
		end
		set name of theFolder to (comment of theFolder) & (fileCount to string)
		return fileCount
  end tell
end setItemCount
ersetzt, sollte es super gehen. dann heißt der ordner "[Filme]" halt "[Filme] 42", wenn 42 dateien drin sind.

OHNE GEWÄHR, ich hab grad zum ersten mal applescript gesehen.
Bearbeitet von prayerslayer am 24.09.2009, 18:51

retro

computer says no
Avatar
Registered: Jul 2002
Location: XXII
Posts: 3260
blos soll ers eh nicht umbennen sondern mir nur ausgeben (oder in eine txt schreiben)

ich probier das halt mal...

prayerslayer

Oar. Mh.
Avatar
Registered: Sep 2004
Location: vorm Sucher
Posts: 4073
wollt ich anfangs auch machen, nur ohne probieren is sowas immer blöd. sonst nimm meine funktion, übergib den ordner und gibs mit "say" aus :D

retro

computer says no
Avatar
Registered: Jul 2002
Location: XXII
Posts: 3260
repeat with Regisseur in alleRegisseure
set summeUnterordner to {}
set x to 0
set Inhalt2 to entire content of Regisseur
repeat with Element2 in Inhalt2
if kind of Element2 = Folder then
set x to x + 1
end if
end repeat
if x = 0 then -- der Unterordner war leer
set x to 1 -- wir zählen nur den Regisseurordner
end if
set summeOrdner to (summeOrdner + x) -- das Zwischenergebnis wird zur Gesamtsumme addiert
end repeat



so vielleicht ?
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz