• In diesem Bereich findet ihr Tutorials und Reviews. Die Forenrechte zur Erstellung neuer Themen sind hier eingeschränkt, da Problemdiskussionen bitte in den übrigen Forenbereichen auf Apfeltalk zu führen sind. Wer ein Tutorial oder Review einstellen möchte, kann im Unterforum "Einreichung neuer Tutorials" ein neues Thema erstellen. Die Moderatoren verschieben den Beitrag dann in den passenden Bereich.
  • Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Wir haben den Frühjahrsputz beendet, Ihr auch? Welches Foto zu dem Thema hat Euch dann am Besten gefallen? Hier geht es lang zur Abstimmung --> Klick

Ordnerüberwachung mit Ordneraktion

Kernelpanik

Maren Nissen
Registriert
05.03.04
Beiträge
2.303
Hallo Leute,
ich möchte der Community eines meiner Applescripts zur Verfügung stellen. Es überwacht eingehende und ausgehende Files in einem Ordner und schreibt ein Logfile in "~/Library/Logs/FolderActivity/" Die eingehenden Files sind mit einem "+" mit nachstehendem Datum und File Pfad gekennzeichnet ebenso die ausgehenden Files die aber ein "-" vorangestellt haben. Das Script muß einfach in Applescript-Editor gespeichert werden und als Ordneraktion für einen beliebigen Ordner gewählt werden.

Code:
on removing folder items from getFolder after losing removItems
    writeLog(getFolder, removItems, "- ")
end removing folder items from
on adding folder items to getFolder after receiving newItems
    writeLog(getFolder, newItems, "+ ")
end adding folder items to

on writeLog(getFolder, folderItems, y)
    set {d, fiList} to {do shell script "date '+%d.%m.%Y %T '", ""}
    try
        tell application "System Events"
            set fiNam to name of getFolder & "_Activity.log"
            repeat with x in folderItems
                set fiList to fiList & y & d & POSIX path of x & return
            end repeat
        end tell
        do shell script "mkdir -p ~/Library/Logs/FolderActivity;echo " & quoted form of fiList & " >> ~/Library/Logs/FolderActivity/" & quoted form of fiNam
    on error erstrg
        display alert "FolderActivity.log.scpt" message erstrg as critical
    end try
end writeLog

Ich habe ein Problem mit High Sierra entdeckt. Hier die Korrektur dafür:
Code:
on removing folder items from getFolder after losing removItems
    writeLog(getFolder, removItems, "- ")
end removing folder items from
on adding folder items to getFolder after receiving newItems
    writeLog(getFolder, newItems, "+ ")
end adding folder items to

on writeLog(getFolder, folderItems, y)
    set {d, fiList} to {do shell script "date '+%d.%m.%Y %T '", ""}
    try
        tell application "System Events"
            set foNam to name of getFolder & "_Activity.log"
        end tell
        repeat with x in folderItems
            set fiList to fiList & y & d & POSIX path of x & return
        end repeat
        do shell script "mkdir -p ~/Library/Logs/FolderActivity;echo " & quoted form of fiList & " >> ~/Library/Logs/FolderActivity/" & quoted form of foNam
    on error erstrg
        display alert "FolderActivity2.log.scpt" message erstrg as critical
    end try
end writeLog
 
Zuletzt bearbeitet: