• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Applescript-Droplet soll Unterordner abarbeiten

madmaex

Erdapfel
Registriert
15.06.16
Beiträge
3
Hallo zusammen,

ich hab mir ein Apple Script gebastelt das mir Katalogbilder die in unterordnern liegen in tifs umspeichern soll und in Ordner ablegen soll. Nur jetzt geht das tif nur für den obersten Ordner, hört dann auf und die nächsten Ordner die dann interessant werden bearbeitet das droplet nicht.
Kann mir jemand helfen?
;)
Es wäre sagenhaft wenn ich die Ordner nicht mehr einzeln auf das droplet ziehen müsste sondern den Ordner darüber.

hier mein script:
on open {input}


set theFiles to (getFilesRecursively(input, "jpg", "eps"))


--In Photoshop öfffnen und als tiff in Quellordner speichern:

repeat with oneFile in theFiles
tell application "Adobe Photoshop CS6"

set oneFile to oneFile as string
open file oneFile showing dialogs {never}

save document 1 as TIFF in (input as string) with options {class:TIFF save options, byte order:IBM PC, embed color profile:true, image compression:LZW, save alpha channels:false, save annotations:false, save image pyramid:false, save layers:false, save spot colors:false, transparency:true} appending lowercase extension --with replacing

close document 1 saving no


end tell
end repeat

--JPG's in Verzeichnis Altlasten verschieben tiffs in _tif verschieben

tell application "Finder"

make new folder in (input as string) with properties {name:"Altlasten"}

make new folder in (input as string) with properties {name:"_tif"}

set scheipegs to (document files of input whose name extension is in {"jpg", "eps"})
move scheipegs to folder "Altlasten" of input

set tif to (document files of input whose name extension is in {"tif"})
move tif to folder "_tif" of input


end tell


end open


on getFilesRecursively(fContainer, fExt)
tell application "Finder"
set recursiveFileList to entire contents of fContainer as alias list

set resultFileList to {}
repeat with aFile in recursiveFileList
if name extension of aFile contains fExt then
set resultFileList to resultFileList & aFile
end if
end repeat
end tell
return resultFileList
end getFilesRecursively

davor hatte ich das am anfang aber mit dem geht es auch nicht
 

Anhänge

  • Bildschirmfoto 2016-06-15 um 09.41.11.png
    Bildschirmfoto 2016-06-15 um 09.41.11.png
    94,2 KB · Aufrufe: 80
  • Bildschirmfoto 2016-06-15 um 09.02.15.png
    Bildschirmfoto 2016-06-15 um 09.02.15.png
    203,2 KB · Aufrufe: 101
Zuletzt bearbeitet von einem Moderator:

sedna

Galloway Pepping
Registriert
22.10.08
Beiträge
1.359
Hallo,

so wie das Skript geschrieben ist, sollten schon alle JPEG und EPS Dateien in das TIFF Format umgewandelt werden, allerdings werden nur die auf der obersten Ebene liegenden in den Ordner "Altlasten" verschoben.
Ändere die folgenden Zeilen in die angehängte:

Code:
--set scheipegs to (document files of input whose name extension is in {"jpg", "eps"})
--move scheipegs to folder "Altlasten" of input
move theFiles to folder "Altlasten" of input

Gruß
 

madmaex

Erdapfel
Registriert
15.06.16
Beiträge
3
Hallo sedna,

irgendwie will es nicht funktionieren.
Es sollen in dem Ordner in dem die Bilder liegen die beiden Ordner "Altlasten" und "_tif" angelegt werden.
Soweit hat das auch funktioniert wenn ich nur diesen Ordner in dem die Bilder liegen auf das droplet gezogen habe.
Aber wenn ich den Ordner darüber nehmen will funktioniert es nicht, es geht nicht in die Ordner hinein zum die Bilder bearbeiten.

Meintest Du das ich anstatt den zwei Zeilen mit -- davor die dritte Zeile einsetzen soll?
Dann bekomm ich einen Fehler.

Grüße
Markus

(Ergebnis ist wie im screen gedacht)
 

Anhänge

  • Bildschirmfoto 2016-06-16 um 08.55.11.png
    Bildschirmfoto 2016-06-16 um 08.55.11.png
    43,9 KB · Aufrufe: 68
Zuletzt bearbeitet:

sedna

Galloway Pepping
Registriert
22.10.08
Beiträge
1.359
Hallo,

habe das Skript an den nötigen Stellen bearbeitet .. sollte so funktionieren (sofern der Photoshop-Teil an sich stimmt)

Gruß

Code:
on open {input}
  
tell application "Finder"
set theFolders to every folder of (input as alias) as list
repeat with aFolder in theFolders
set _Alt to make new folder in aFolder with properties {name:"Altlasten"}
set _Tif to make new folder in aFolder with properties {name:"_tif"}
          
set aFolder to aFolder as alias
set recursiveFileList to entire contents of aFolder as alias list
          
set resultFileList to {}
repeat with aFile in recursiveFileList
if name extension of aFile contains "jpg" or name extension of aFile contains "eps" then
set resultFileList to resultFileList & aFile
end if
end repeat

          
--In Photoshop öfffnen und als tiff in Quellordner speichern:
          
repeat with oneFile in resultFileList
tell application "Adobe Photoshop CS6"
                  
set oneFile to oneFile as string
open file oneFile showing dialogs {never}
                  
save document 1 as TIFF in (_Tif as string) with options {class:TIFF save options, byte order:IBM PC, embed color profile:true, image compression:LZW, save alpha channels:false, save annotations:false, save image pyramid:false, save layers:false, save spot colors:false, transparency:true} appending lowercase extension --with replacing
                  
close document 1 saving no
                  
                  
end tell
end repeat
          
move resultFileList to folder "Altlasten" of aFolder
          
end repeat
end tell
  
end open
 
  • Like
Reaktionen: doc_holleday

madmaex

Erdapfel
Registriert
15.06.16
Beiträge
3
spitzenklasse ;)
funktioniert!!!
Vielen Dank

Dazu noch besser wie vorher!!!