Si le script pouvait également être exécuté lorsque vous ouvrez un fichier (ou dans d'autres cas), vous pourriez utiliser opensnoop.
~/test :
#!/bin/bash
while :; do
opensnoop | grep -Ev ' (mdworker|mds|filecoordinatio|revisiond|Finder|Alfred) ' | grep -m1 '/Users/username/Folder/.*\.txt'
say a
sleep 1
done
/Bibliothèque/LaunchAgents/test.plist :
<?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>test</string>
<key>Program</key>
<string>/Users/username/test</string>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
chmod +x ~/test
, sudo chown root /Library/LaunchAgents/test.plist
et launchctl load /Library/LaunchAgents/test.plist
.