$ ps aux | grep -i ssh
USER 4364 0.0 0.0 9004 1032 ? Ss 12:20 0:00 ssh -v -fND localhost:4000 USERNAME@SERVER-IP-ADDRESS
$ pgrep localhost:4000
Pourquoi ça ne marche pas?
Par défaut, pgrep(1)
ne correspondra qu'au nom du processus. Si vous souhaitez faire correspondre la ligne de commande complète, utilisez l' -f
option:
$ pgrep -f localhost:4000
Jetez un œil à la page de manuel de pgrep . Ce n'est pas seulement un alias pour exécuter ps avec un tas de colonnes, puis greper la sortie de texte. Il recherche en fait des champs spécifiques pour les valeurs. Par défaut, il ne regarde que le nom du processus lors d'une recherche et renvoie le PID . Vous pouvez rechercher la ligne de commande complète en ajoutant l' -f
option. Vous pouvez également rechercher plusieurs autres champs qui pourraient être utiles, tels que la correspondance du terminal sur lequel un processus est en cours d'exécution ou l'ID de groupe.