macOS tools moving to my git
This commit is contained in:
51
idlecheck_quitaudioprevent
Executable file
51
idlecheck_quitaudioprevent
Executable file
@@ -0,0 +1,51 @@
|
||||
#!/bin/sh
|
||||
|
||||
export PATH=$PATH:/usr/bin/local
|
||||
cname=`scutil --get ComputerName`
|
||||
export CNAME=$cname
|
||||
pmt=/tmp/pmset-test.txt
|
||||
pmv=/tmp/pmset-audiowakepids.txt
|
||||
pidf=/tmp/pmset-test-pid.txt
|
||||
|
||||
echo ""
|
||||
echo ""
|
||||
echo "// idlecheck_quitaudioprevent"
|
||||
echo "----------------------------------------------"
|
||||
|
||||
pmset -g assertions > ${pmt}
|
||||
|
||||
echo "" > ${pmv}
|
||||
fgrep "Playing audio" ${pmt} | fgrep "NoIdleSleepAssertion" | sed 's/^.*pid \([0-9]\{1,6\}\)(\(.*\)).*$/\1 \2/' > ${pmv}
|
||||
|
||||
tsize=`stat -f%z ${pmv}`
|
||||
#echo "file size: ${tsize}"
|
||||
zs=0
|
||||
|
||||
if [ $tsize -gt 0 ]; then
|
||||
cat ${pmv} | while read line
|
||||
do
|
||||
pid=$(echo $line | awk '{print $1}')
|
||||
name=$(echo $line | awk '{print $2}')
|
||||
#echo "PID: ${pid}"
|
||||
#echo "NAME: ${name}"
|
||||
echo "* quitting Playing Audio Process: ${name} (${pid})"
|
||||
osascript -e "ignoring application responses" -e "quit app \"$name\"" -e "end ignoring"
|
||||
sleep 3
|
||||
ps -p ${pid} > ${pidf}
|
||||
pfsz=`stat -f%z ${pidf}`
|
||||
if [ $pfsz -gt 40 ]; then
|
||||
echo " killing pid as script didn't kill it? pid ${pid}"
|
||||
sleep 3
|
||||
kill -9 $pid
|
||||
else
|
||||
echo " quit successfully!"
|
||||
fi
|
||||
done
|
||||
else
|
||||
echo "* no Playing Audio processes"
|
||||
fi
|
||||
|
||||
|
||||
if [ -f "${pmt}" ]; then rm ${pmt}; fi
|
||||
if [ -f "${pmv}" ]; then rm ${pmv}; fi
|
||||
if [ -f "${pidf}" ]; then rm ${pidf}; fi
|
||||
Reference in New Issue
Block a user