I'm not sure if there's a better way to do this other than the osascript method. But I'm posting here in case anyone figures something out. I could use it myself at times.
I might be interested in this as well. Have you tried to do a PPPC profile for this? I seem to have mixed results with them working as expected.
After hours of not getting a correct PPPC profile and still getting the **bleep** pop up, I found another solution for this problem:
@franton together with @talkingmoose found a nice way to not use osascript to get (almost) the same result.
Almost, as in they are not using the pids but the process names. Which i guess doesn't make a big difference at the end.
Check the script here: https://github.com/franton/Mac-Patcher-and-Upgrader/blob/e78f94a8610a4e588ee5671b7383cb9dfeac7903/Jamf%20Pro%20Scripts/cached%20pkg%20installer.sh#L262
################################
#
# Close all running applications
#
################################
# Find all applications with osascript and process them into an array.
# Big thanks to William 'talkingmoose' Smith for this way of parsing lsappinfo
runningapps=($( /usr/bin/lsappinfo list | /usr/bin/grep -B 4 Foreground | /usr/bin/awk -F '\\\\) "|" ASN' 'NF > 1 { print $2 }' ))
# Process the new array of apps and gently kill them off one by one.
# Obviously we don't want to kill a few apps we don't routinely update.
for app ($runningapps)
do
[[ "$app" =~ ^(Finder|Progress|Google Chrome|Safari|Self Service|Terminal)$ ]] && continue
/usr/bin/pkill "$app"
done
fi
Hi,
Yeah this one is all @talkingmoose 😉
Hi,
Yeah this one is all @talkingmoose 😉
@franton
just noticed that in your comment your in front of the code you're still talking about osascript, which I guess you were using before. Good thing for me, that was the keyword how I found it 😄 So sometimes forgetting something can be a benefit 😄