Ok, ik heb even iets geschreven.
Opmerking: Ik heb dit script uitgetest op een Map met 5 levels met bestanden in. Het kan zijn dat dit een zwaar script is als je het door heel veel bestanden laat gaan.

(Hij kijkt elk bestand en map na)
Opmerking 2: Hij maakt van elk bestand of map dus een alias op het bureaublad. Kies dus bij voorkeur een map om te labellen en niet de documenten erin want anders maakt hij van elk documentje een alias en dan staat je bureaublad meteen vol.
Opmerking 3: Het scriptje kan waarschijnlijk korter geschreven worden en ook helemaal anders maar ik heb het zo gemaakt zodat het voor mezelf duidelijk is.
Dus hij kijkt alle bestanden en mappen na die in de opgegeven folder staan (=variabele "werkFolder"). Als je in deze folder, een map of bestand
Oranje maakt dan maakt ie een alias aan op het bureaublad met dezelfde naam en ook in het
Oranje. Als je de alias dan
Groen maakt dan zal nadat het script gelopen heeft, de map of het bestand waarnaar het verwijst "kleurloos" maken en zichzelf in de prullenbak gooien.
Verander dus lijntje 2 naar je map die je wilt nakijken. En verander lijntje 53 naar je bureaublad.
Als je dit script dus om de x minuten runt dan werkt het normaal zonder zorgen. Je gaat wel een tijdje mogen wachten (naargelang hoeveel keer het script gerunt wordt natuurlijk

) als je een map "Oranje" hebt gemaakt voordat de alias verschijnt en vica versa.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
| tell application "Finder"
set werkFolder to folder "test1" of folder "Desktop" of folder "adriaan" of folder "Users" of folder "Macintosh HD"
my isAliasGroen()
my kijkBestandNa(werkFolder)
end tell
on kijkBestandNa(deFolder)
tell application "Finder"
-- Maak lijst van alle bestanden in folder
set bestanden to every file of deFolder
-- Doe nu iets met elk bestand
repeat with eenBestand in bestanden
set labelIndexBestand to (get label index of eenBestand)
-- Een bestand is oranje! Maak alias aan
if (labelIndexBestand is equal to 1) then
set naamVanBestand to (get name of eenBestand)
set deAlias to (make new alias file at desktop to eenBestand)
set name of deAlias to naamVanBestand
set label index of deAlias to 1
end if
end repeat
-- Maak lijst van alle mappen in folder
set mappen to every folder of deFolder
repeat with eenMap in mappen
set labelIndexMap to (get label index of eenMap)
-- Een map is oranje! Maak alias aan
if (labelIndexMap is equal to 1) then
set naamVanMap to (get name of eenMap)
set deAlias to (make new alias file at desktop to eenMap)
set name of deAlias to naamVanMap
set label index of deAlias to 1
end if
-- Kijk nu de bestanden in die map na
my kijkBestandNa(eenMap)
end repeat
end tell
end kijkBestandNa
on isAliasGroen()
tell application "Finder"
set bureaublad to folder "Desktop" of folder "adriaan" of folder "Users" of folder "Macintosh HD"
-- Maak lijst van alle bestanden
set aliassen to every alias file of bureaublad
-- Doe nu iets met elk bestand
repeat with eenAlias in aliassen
set labelIndexBestand to (get label index of eenAlias)
-- Een Alias is groen! Verwijder Alias en maak de originele map/bestand ook kleurloos
if (labelIndexBestand is equal to 6) then
set origineelItem to (get original item of eenAlias)
set label index of origineelItem to 0
move eenAlias to trash
end if
end repeat
end tell
end isAliasGroen |
Was leerrijk om te maken.
Ghehe