Lo que estoy tratando de hacer es: matar un proceso cuando se inicia. Entonces, ¿me gustaría saber cómo detectar cuándo se inicia un proceso? ¿O cómo bloquear un proceso o una aplicación para que no se inicie?
¿Cualquier sugerencia sería apreciada?
Lo que estoy tratando de hacer es: matar un proceso cuando se inicia. Entonces, ¿me gustaría saber cómo detectar cuándo se inicia un proceso? ¿O cómo bloquear un proceso o una aplicación para que no se inicie?
¿Cualquier sugerencia sería apreciada?
Abra esto en el Editor de secuencias de comandos y expórtelo como una aplicación de solo lectura y asegúrese de que permanezca abierto después de ejecutar el controlador desactivado
Después de exportar, siga esto Guía para evitar que se muestre en el muelle.
# Block Apps By Josh Brown
# Last Modified: Aug 23 2018
global applist
on run
set applist to {"Google Chrome", "App Store"} -- Apps to limit
if checkapps() then
killall()
end if
end run
on is_running(appName)
try
if (the length of (do shell script "pgrep -x " & quoted form of appName) > 0) then
kill(do shell script "pgrep -x " & quoted form of appName)
end if
end try
end is_running
on checkapps()
set x to false
repeat with a from 1 to length of applist
is_running(item a of applist)
end repeat
return x
end checkapps
on kill(theID)
do shell script "kill -9 " & theID
end kill
Nota: Debes ser un administrador para hacer esto.
Guarda el siguiente archivo en /Library/LaunchDaemons/
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.PlzUpvoteMy.answer</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/open</string>
<string>-W</string>
<string>**/path/to/application.app**</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>StartInterval</key>
<integer>5</integer>
<key>UserName</key>
<string>**UserToBlock**</string>
</dict>
</plist>
Cambie los permisos con el siguiente comando:
sudo chown root:wheel /Library/LaunchDaemons/com.MyName.plist
Nota: Debes ser administrador para hacer esto.
Para iniciar el daemon usa este comando:
sudo launchctl load /Library/LaunchDaemons/com.MyName.plist
El programa buscará las aplicaciones cada 5 segundos y las cerrará si se están ejecutando.
Para detener el daemon usa este comando
sudo launchctl unload /Library/LaunchDaemons/com.MyName.plist
Lea otras preguntas en las etiquetas macos high-sierra