Puoi utilizzare launchd a tale scopo. Ecco un esempio di un launchd config plist che eseguirà un AppleScript quando viene montato un disco:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>Example</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/osascript</string>
<string>/Users/sakra/Documents/Test.applescript</string>
</array>
<key>StartOnMount</key>
<true/>
</dict>
</plist>
Per attivare il file di configurazione, salvalo nella cartella LaunchAgents nella cartella Libreria come Example.plist
.
Dal Terminale puoi quindi utilizzare il comando launchctl
per attivare Example.plist
eseguendo:
launchctl load ~/Library/LaunchAgents/Example.plist
L'AppleScript verrà quindi eseguito ogni volta che viene montato un filesystem.
Per disattivarlo, esegui:
launchctl unload ~/Library/LaunchAgents/Example.plist