Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

POSIX und do shell script

 
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> AppleScript X
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
BaboonOSX
•->
•->


Anmeldedatum: 01.08.2004
Beiträge: 7

BeitragVerfasst am: 30.12.2007 - 23:08    Titel: POSIX und do shell script Antworten mit Zitat

Hallo!

Mit Automator und einem AS habe ich mir eine Möglichkeit geschaffen in regelmäßigen Abständen wichtige Daten zu archivieren. Automator erstellt dabei ein Archiv der Daten, benennt dieses Archiv um und verschiebt es in einen Archiv-Ordner. Das AS prüft anschließend die Anzahl der Archive im Ordner. Wenn diese einen voreingestellten Wert übersteigt wird das älteste Archiv gelöscht.
So weit so gut. Das funktioniert schon mal sehr gut. Nun möchte das Script gern erweitern in dem ich die MD5-Summen der letzten beiden Archive gern vergleichen möchte, um zu prüfen ob seit der letzten Datensicherung überhaupt Daten geändert wurden. Und da klemmt es.

Code:

-- MD5 Test
if MD5TestDurchfuehren = true then
   tell application "Finder"
      if folder DerArchivPfad exists then -- testen ob Archiv Pfad OK ist
         set DieDateiliste to every item of folder DerArchivPfad -- Dateiliste anlegen ...
         sort DieDateiliste by creation date -- ... und sortieren nach Erstellungsdatum
         set DieDateiliste to the result
         set LetzteDatei to the last item of DieDateiliste
         -- set POSIXPath to quoted form of POSIX path of LetzteDatei
         --            set MD5LetzteDatei to do shell script "md5 -q " & LetzteDatei
         --            delete last item of DieDateiliste -- letzte Datei loeschen
      else -- Archiv-Pfad nicht gefunden
         set Resultat to "Archivpfad nicht gefunden!"
      end if
   end tell
end if -- MD5TestDurchfuehren



Ich muss dem MD5 Befehl ja einen POSIX-Pfad übergeben, aber wie konvertiere ich den letzten (den vorletzten) Eintrag aus meiner Liste korrekt in einen POSIX Pfad? Wie Ihr im Code noch teilweise sehen könnt habe ich schon diverse Sachen ausprobiert ... nun müssen die Profis ran! Wink

Danke schon mal und viele Grüße

Sebastian
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name
iScript
•---->
•---->


Anmeldedatum: 29.03.2001
Beiträge: 1116

BeitragVerfasst am: 31.12.2007 - 02:27    Titel: Antworten mit Zitat

übergebe die variable "LetzteDatei" als alias, und wandle erst direkt im shell-commando auf die "quoted form" des "posix-path". dann sollte es klappen:

      set LetzteDatei to the last item of DieDateiliste as alias
      set MD5LetzteDatei to do shell script "md5 -q " & quoted form of POSIX path of LetzteDatei
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name
BaboonOSX
•->
•->


Anmeldedatum: 01.08.2004
Beiträge: 7

BeitragVerfasst am: 31.12.2007 - 11:47    Titel: Antworten mit Zitat

Ja, es funktioniert! Vielen Dank für die schnelle Hilfe! Dieser Bereich von AS ist für mich noch immer sehr unverständlich.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> AppleScript X Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter