Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Günter •->

Anmeldedatum: 28.02.2008 Beiträge: 8
|
Verfasst am: 02.03.2008 - 19:16 Titel: Optimierung eines Scripts zum Formularblock deaktivieren |
|
|
Quark 6.5 erzeugt beim Sichern unter Leopard Dateien, bei denen das "Formularblock-Häkchen" gesetzt ist. Da diese Version nicht für 10.5 vorgesehen ist, kümmert das Quark wenig.
Ich habe ein Script, dass bei allen Dateien eines Ordners den Formularblock deaktiviert (siehe unten).
Da das ganze auf einem Server mit sehr vielen Dateien laufen soll, ist es in dieser Form viel zu langsam. Ein Durchlauf dauert mehrere Minuten.
Wie kann ich es optimieren, so dass z.B.
- nur .qxd-Dateien
- nur neue Dateien
geändert werden?
Außerdem sollte das Script permanent arbeiten und per Benutzeroberflche Ein- uns Auschaltbar sein.
on run
tell me to open {choose file}
end run
--Alternativ kann der Ordner auch per Drag & Drop gewählt werden
on open this_item
SetStat(this_item)
end open
on SetStat(the_item)
set alias_item to the_item as alias
tell application "Finder"
set stationery of alias_item to false
end tell
end SetStat |
|
Nach oben |
|
 |
iScript •---->


Anmeldedatum: 29.03.2001 Beiträge: 1116
|
Verfasst am: 02.03.2008 - 20:50 Titel: |
|
|
an dich den gleichen tipp wie an PI (siehe hier): installiere dir die osxutils und mach's rekursiv über einen shell-befehl. vielleicht mit find ... -exec ...
setfflags wäre dann der relevante befehl. dann könntest du AS sogar ganz raus lassen. Das dürfte deutlich schneller sein. |
|
Nach oben |
|
 |
Günter •->

Anmeldedatum: 28.02.2008 Beiträge: 8
|
Verfasst am: 02.03.2008 - 21:13 Titel: |
|
|
Danke für die schnelle Antwort aber - sorry, aber das ist mir ein paar Etagen zu hoch. Kannst Du es etwas ausführlicher beschreiben? |
|
Nach oben |
|
 |
iScript •---->


Anmeldedatum: 29.03.2001 Beiträge: 1116
|
Verfasst am: 02.03.2008 - 22:44 Titel: |
|
|
Oh, da muss ich mich dann selbst erst mal ran tasten. Analog zu dem, was du mittels Finder machst würde es mit den osxutils in der shell so lauten:
Code: | setfflags -s false '/pfad/zur/datei/diedatei.qxd'
| um den Formularblock einer Datei zu deaktivieren. |
|
Nach oben |
|
 |
iScript •---->


Anmeldedatum: 29.03.2001 Beiträge: 1116
|
Verfasst am: 03.03.2008 - 00:50 Titel: |
|
|
Probiere das zunächst einmal mit einem kleinen Unterordner, bevor du es auf den ganzen Server los lässt:
set derOrdner to text 1 thru -2 of POSIX path of (choose folder)
(* es werden alle files (rekursiv) geändert, deren änderungsdatum älter als 30 tage ist,
und deren name mit ".qxd" endet *)
do shell script "find " & quoted form of derOrdner & ¬
" -type f -name '*.qxd' -mtime +30 -exec usr/local/bin/setfflags -s false {} \\;"
osxutils müssen natürlich installiert sein. |
|
Nach oben |
|
 |
|