Option-Click
en el icono en el Finder para que aparezca la opción Force Quit
, y haz clic en él.
De lo contrario, puede hacerlo fácilmente desde la línea de comandos a través de Terminal
con el siguiente comando:
ps aux | grep -i spotify | awk '{print $2}' | xargs kill -9
o
kill -9 $(ps aux | grep -i spotify | awk '{print $2}')
No estoy en mi Mac en este momento, por lo que en realidad puede ser awk '{print $1}'
, pero creo que para la salida de OS X, la segunda columna le dará el PID que está buscando.
Un poco más de lo que pediste:
Si intenta kill
o kill -9
un PID no existente, kill
vomitará una salida de "ayuda" confusa a STDERR. Si desea evitar esta salida cuando este comando falla (lo que no dañará nada), simplemente redirija STDERR a / dev / null, lo que haría que los comandos anteriores sean los siguientes:
ps aux | grep -i [s]potify | awk '{print $2}' | xargs kill -9 2>/dev/null
o
kill -9 $(ps aux | grep -i [s]potify | awk '{print $2}') 2>/dev/null
En realidad, tengo una función extremadamente útil en uno de mis archivos de puntos, que se obtiene en mi .bash_profile
durante cada sesión de terminal, que es la siguiente (por favor, disculpe el idioma, pero esto es realmente como lo llamo):
fuckyou() { ps aux | grep -i "$1" | grep -v 'grep' | awk '{print $2}' | xargs kill -9 2>/dev/null; }
Para mí, esto crea el comando fuckyou
, que toma un argumento (el nombre del proceso ofensivo que deseo terminar), encuentra el ID del proceso (PID) de ese proceso y lo termina.
De esta manera, si fueras yo, simplemente podrías ejecutar fuckyou spotify
.
La única advertencia es que si hay varios procesos ejecutándose con el mismo, como Spotify.app y com.spotifyhelper.plist o algo así, deberías especificar explícitamente "Spotify.app", pero grep -i
is mayúsculas y minúsculas, por lo que podría decir fuckyou 'Spotify.app'
.
Si quisiera eliminar todos los procesos con un nombre determinado (como en todos los procesos asociados con Spotify), tendría que colocar una sola línea en un bucle for
o while
, como este:
for i in $(ps aux | grep -i [s]potify | awk '{print $2}'); do kill -9 "$i" 2>/dev/null; done
Esto básicamente le dice a Bash que haga lo siguiente:
- Imprima todos los nombres de proceso en ejecución junto con sus ID de proceso (
ps aux
)
- Realice una búsqueda que no distinga mayúsculas y minúsculas para "spotify" en esta salida (el primer carácter entre corchetes evitará que se devuelva el proceso
grep -i spotify
)
- Agarre solo la segunda columna de ID de proceso (que ahora solo debe incluir procesos relacionados con Spotify)
- Para todos estos procesos relacionados con Spotify, obligue a cada uno a terminar