Que signifie le |
symbole dans la sudo ps -ef | grep processname
commande?
Quelqu'un peut-il également expliquer cette commande? J'ai utilisé cette commande uniquement pour obtenir le PID et tuer ce processus, mais j'ai également vu sudo ps -ef | grep processname | grep -v grep
et j'ai l'impression que -v grep
c'est comme tuer le PID généré précédemment pour grep
. Si c'est le cas, comment ça marche?
ps -ef | grep '[p]rocessname'
grep [p]rocessname
, vous dites au shell de rechercher un fichier dans le répertoire courant avec le nom processname
et de remplacer le modèle par le nom de ce fichier. Si aucun fichier nommé processname
n'existe, le shell peut passer le modèle littéralement à grep. Mais cela dépend de vos paramètres. Donc , votre version cassera si un fichier nommé processname
existe ou si l' une des options suivantes shell a été activé failglob
, nullglob
, nocaseglob
.
sudo
de courirps -ef
. Une astuce courante pour éviter la troisième commande consiste à placer un caractère du nom du processus entre crochets:ps -ef | grep [p]rocessname