| 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: 
 um den Formularblock einer Datei zu deaktivieren. 	  | Code: |  	  | setfflags -s false '/pfad/zur/datei/diedatei.qxd' 
 | 
 |  | 
	
		| 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 |  | 
	
		|  | 
	
		|  |