Procédures est un utilitaire de ligne de commande pour afficher des informations sur les processus actifs et en cours d'exécution. C'est comme la traditionnelle commande Ps mais avec quelques fonctionnalités supplémentaires. Il est connu comme un remplacement moderne de la commande Ps. Procs est écrit en Rust langage de programmation et il est multiplateforme. Au moment de la rédaction de ce guide, Procs prend entièrement en charge Linux. Mac OS et Windows sont pris en charge à titre expérimental. Dans ce bref tutoriel, voyons comment installer Procs et comment afficher les informations de processus à l'aide de Procs sous Linux.
Caractéristiques
Comparé au Ps, le Procs a quelques avantages comme indiqué ci-dessous.
- Il affiche la sortie au format coloré.
- Affiche la sortie dans un format lisible par l'homme.
- Affiche des informations supplémentaires qui ne sont pas prises en charge par ps.
- Port TCP/UDP
- Débit de lecture/écriture
- Nom du conteneur Docker
- Plus d'informations sur la mémoire
- Affiche les processus sous forme d'arborescence.
- Prise en charge des téléavertisseurs.
Installer les procédures sous Linux
Il existe plusieurs façons d'installer Procs sur Linux. Choisissez celui qui vous convient.
Télécharger le binaire Procs :
Téléchargez le dernier fichier binaire Procs à partir de la page des versions .
$ wget https://github.com/dalance/procs/releases/download/v0.8.16/procs-v0.8.16-x86_64-lnx.zip
Extrayez le fichier zip téléchargé :
$ unzip procs-v0.8.16-x86_64-lnx.zip
Déplacez-le vers votre $PATH , par exemple /usr/local/bin/ :
$ sudo mv procs /usr/local/bin/
Enfin, rendez-le exécutable :
$ sudo chmod +x /usr/local/bin/procs
Utiliser Cargo :
Comme Procs est écrit en Rust, nous pouvons l'installer à l'aide du gestionnaire de packages Cargo. POUR utiliser Cargo package manager, installez Rust sous Linux comme décrit dans le lien suivant.
- Installer le langage de programmation Rust sous Linux
Après avoir installé Rust, exécutez la commande suivante pour installer Procs :
$ cargo install procs
Utiliser Snap :
$ sudo snap install procs
Utilisation du gestionnaire de packages Nix :
$ nix-env --install procs
En utilisant Linuxbrew :
$ brew install procs
Après avoir installé Procs, vous devez effectuer les opérations suivantes pour qu'il fonctionne correctement.
Dans certains environnements, les caractères UTF-8 ressembleront à des caractères échappés étranges comme ci-dessous.
Caractères d'échappement impairs dans la sortie Procs
Pour résoudre ce problème, ajoutez la variable d'environnement suivante dans ~/.bashrc ou ~/.bash_profile ou ~/.profile fichiers :
export LESSCHARSET=utf-8
L'utilisateur normal ne peut pas accéder à certaines informations (par exemple, le débit en lecture/écriture) d'autres utilisateurs utilisant Procs sous Linux. Pour permettre aux utilisateurs normaux d'accéder à ces informations, exécutez :
$ procs --suid sudo sh -c "chown root /usr/local/bin/procs; chmod u+s /usr/local/bin/procs"
Terminé! Il est temps de voir comment utiliser Procs pour afficher des informations sur les processus.
Afficher les informations de processus à l'aide de Procs sous Linux
L'utilisation de Procs est presque la même que la commande Ps. Permettez-moi de vous montrer quelques exemples.
Afficher des informations sur tous les processus
Pour afficher des informations sur tous les processus en cours d'exécution sur votre machine Linux, exécutez simplement :
$ procs
Exemple de sortie :
Afficher les informations de processus à l'aide de Procs sous Linux
Voir? Procs affiche des informations détaillées sur tous les processus. Cela équivaut à la commande "ps aux", mais la sortie est meilleure que la sortie Ps et contient des informations supplémentaires telles que le numéro de port TCP/UDP, le débit de lecture/écriture et la prise en charge des couleurs, etc. Pour quitter Procs, appuyez sur q ou CTRL+c .
Procs affichera la sortie sur une page à la fois. Si les lignes de sortie dépassent la hauteur du terminal, le téléavertisseur est utilisé automatiquement. Vous pouvez afficher le reste de la sortie en appuyant sur la touche ENTER. Les flèches HAUT/BAS peuvent être utilisées pour aller aux pages précédentes ou suivantes.
Afficher les processus correspondant à une chaîne
Les procs peuvent afficher les processus correspondant à un mot-clé spécifique.
La commande suivante affiche les correspondances de processus avec le mot-clé "sshd" .
$ procs sshd
De même, nous pouvons afficher des informations sur les processus correspondants avec la chaîne sk .
$ procs sk
Exemple de sortie :
Afficher les processus correspondant à une chaîne
Veuillez noter qu'il affichera tous les processus contenant la chaîne donnée. Il n'est pas spécifique à un UTILISATEUR ou à une COMMANDE.
Afficher les processus correspondant à un nombre
Il est également possible d'afficher des informations de processus correspondant à des mots-clés numériques tels que PID, TCP, UDP. Par exemple, la commande suivante affiche les détails des processus correspondant au numéro 22 :
$ procs 22 PID:▲ User │ State Nice TTY CPU MEM VmPeak VmSize VmRSS TCP UDP Read Write │ CPU Time Start │ Command │ [%] [%] [bytes] [bytes] [bytes] [B/s] [B/s] │ │ 22 root │ S 19 0.0 0.0 0 0 [] [] 0 0 │ 00:00:00 2020/01/08 12:02 │ khugepaged 1030 root │ S 0 0.0 0.3 70.629M 70.602M 5.625M [22] [] 0 0 │ 00:00:00 2020/01/08 12:03 │ /usr/sbin/sshd -D
Comme vous le voyez dans la sortie ci-dessus, le nombre 22 est présent dans les colonnes PID et TCP.
Afficher les processus sous forme d'arborescence
Pour afficher des informations sur tous les processus sous forme d'arborescence, exécutez :
$ procs -t
Ou,
$ procs --tree
Afficher les processus sous forme d'arborescence à l'aide de proc
Tous les processus sont triés par ordre de dépendance et l'arborescence des dépendances est affichée sur le côté gauche.
La commande Ps affiche également les informations de processus sous forme d'arborescence à l'aide de la commande :
$ ps axjf
Ou,
$ ps -ejH
Cependant, le format de l'arborescence Procs est mieux aligné que la sortie de la commande Ps.
Modifier l'ordre de tri des colonnes
Procs vous permet de modifier l'ordre des colonnes utilisateur, état, valeur Nice, temps processeur, vmsize, vmrss, débit de lecture/écriture comme vous le souhaitez. Vous pouvez raccourcir les résultats des colonnes dans l'ordre croissant ou décroissant.
Par exemple, pour trier l'ordre de la colonne de temps CPU dans l'ordre croissant, utilisez sorta (trier un scending) comme ci-dessous :
$ procs --sorta cpu
De même, pour trier par ordre décroissant, utilisez l'option sortd (tri décroissant) :
$ procs --sortd cpu
Mode montre
Procs prend en charge le mode montre, tout comme la commande supérieure . Vous devriez avoir remarqué que la sortie de la commande Top se met automatiquement à jour à 3,0 secondes d'intervalle par défaut. Procs peut également mettre à jour sa sortie automatiquement à des intervalles spécifiés par l'utilisateur. Par exemple, pour mettre à jour la sortie de Procs toutes les 2 secondes , exécutez :
$ procs --watch 2
Pour quitter le mode montre, appuyez sur q ou Ctrl+c .
Suggestion de lecture :
- Comment savoir depuis combien de temps un processus s'exécute sous Linux
- Comment modifier la priorité d'un processus sous Linux
- Comment suspendre un processus et le reprendre ultérieurement sous Linux
- Reptyr – Déplacer un processus en cours d'exécution d'un terminal à un autre sans le fermer
Plus de détails peuvent être trouvés dans la section d'aide.
$ procs --help procs 0.8.16 USAGE: procs [FLAGS] [OPTIONS] [--] [KEYWORD]... FLAGS: -a, --and AND logic for multi-keyword -o, --or OR logic for multi-keyword -d, --nand NAND logic for multi-keyword -r, --nor NOR logic for multi-keyword -l, --list Show list of kind -t, --tree Tree view --config Generate configuration sample file --suid Set suid bit and change binary owner to root -h, --help Prints help information -V, --version Prints version information OPTIONS: -w, --watch <second> Watch mode -i, --insert <kind>... Insert column to slot --sorta <kind> Sort column by ascending --sortd <kind> Sort column by descending -c, --color <color> Color mode [possible values: auto, always, disable] -p, --pager <pager> Pager mode [possible values: auto, always, disable] --interval <millisec> Interval to calculate throughput [default: 100] ARGS: <KEYWORD>... Keywords for search
J'espère que ça aide.
Que pensez-vous de cet utilitaire ? Faites-nous part de vos réflexions dans la section des commentaires ci-dessous.