web-dev-qa-db-fra.com

Comment trouver un processus spécifique avec "top" dans un terminal Mac

J'ai essayé top | grep skype par exemple mais ça ne marche pas. J'essaie de trouver un processus spécifique par son nom. 

34
c1p0

Utilisez ceci à la place: ps -ax | grep -i skype

54
xofer

Utilisez: top -l 0 | grep Skype

Le 0 est pour des échantillons infinis. Vous pouvez également limiter le nombre d'échantillons à un nombre positif.

10
jeff

Sous Linux, la commande top prend en charge l’option -p pour surveiller des PID spécifiques. Sous MacOS, l’option -p s’appelle plutôt -pid.

# Get the PID of the process
pgrep Skype

# Then
top -pid <put PID here>

# Or more succinctly:
top -pid `pgrep Skype`

Si vous faites cela souvent, vous pouvez le transformer en une fonction et l'ajouter à ~/.bash_profile:

# Add this to ~/.bash_profile
function topgrep() {
    if [[ $# -ne 1 ]]; then 
        echo "Usage: topgrep <expression>"
    else 
        top -pid `pgrep $1`
    fi
}

Maintenant, vous pouvez simplement utiliser topgrep Skype à la place, qui fonctionnera comme d’habitude, mais ne montrera que le ou les processus correspondant à expression.

6
Dave

si vous aimez vraiment le top, vous pouvez essayer:

top -b -n 1 | grep skype

par exemple.

kent$  top -b -n 1 |grep dropbox
 4039 kent      20   0  184m  14m 5464 S    0  0.4   0:58.30 dropbox
6
Kent

utilisez ps au lieu de top.

2
Heisenbug

Vous pouvez maintenant utiliser pgrep skype pour trouver le processus.

1
seantomburke

Бы порекомендовал использовать ps -ax | less

Oui lessвы можете ввести/skypename__Enterискать процессы с именами, содержащими "скайп".

0
Brad Johnson