Se lo script può essere eseguito anche quando apri un file (o in altri casi), puoi utilizzare 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
/Library/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
e launchctl load /Library/LaunchAgents/test.plist
.