Photo publiée avec l'aimable autorisation de Steffe
Cet article est écrit par SathiyaMoorthy.
À l'aide de la commande ps traditionnelle, vous devez examiner manuellement le PID et le PID parent pour identifier les dépendances entre les processus. Parfois, il peut être utile d'afficher les processus Linux dans un format hiérarchique montrant les processus enfants sous le processus parent. commande pstree (arborescence de processus) affichera les processus de manière hiérarchique.
À l'aide de la commande ls, vous affichez généralement le contenu d'une structure de répertoires. Parfois, il peut être très utile de visualiser la structure des répertoires dans un affichage hiérarchique. commande d'arborescence (arborescence de répertoires) affichera les structures de répertoire de manière hiérarchique.
Dans cet article, voyons comment afficher les processus et les répertoires sous forme d'arborescence avec des exemples détaillés
Je. Arbre de processus - commande pstree
1. Afficher l'arborescence des processus en fonction du PID
Syntax: pstree <PID>
Dans l'exemple suivant, j'ai donné l'id de processus de mon processus gdm, qui affiche tous les processus enfants de mon processus gdm. c'est-à-dire qu'il affiche la xsession, la konsole ouverte, nautilus, ssh et d'autres processus associés au processus gdm.
$ pstree 5038 gdm---gdm-+-Xorg `-x-session-manag-+-gnome-panel---{gnome-panel} |-gnome-settings--+-pulseaudio-+-gconf-helper | | `-2*[{pulseaudio}] | `-{gnome-settings-} |-konsole---3*[bash] |-metacity |-nautilus---{nautilus} |-python |-seahorse-agent |-ssh-agent |-trackerd---{trackerd} `-{x-session-manag}
2. Afficher l'arborescence des processus pour un utilisateur
Syntax: pstree <username>
L'exemple suivant indique que l'ID utilisateur ramesh s'est su-ed dans la machine, a 3 scripts shell en cours d'exécution et a ouvert un éditeur vim.
$ pstree ramesh su---bash-+-3*[sh---sleep] `-vim---{vim}
3. Afficher tous les processus dans une structure hiérarchique
Syntax: pstree
pstree sans argument affichera tout le processus dans une structure hiérarchique. Veuillez noter que seule une sortie partielle est affichée ci-dessous.
$ pstree | more init-+-acpid |-avahi-daemon---avahi-daemon |-bonobo-activati---{bonobo-activati} |-cron |-cupsd |-gdm---gdm-+-Xorg | `-x-session-manag-+-gnome-panel---{gnome-panel} | |-gnome-settings--+-pulseaudio-+-gconf-helper | | | `-2*[{pulseaudio}] | | `-{gnome-settings-} | |-konsole---3*[bash] | |-metacity | |-ssh-agent | `-{x-session-manag} |-getty |-konsole-+-2*[bash] | |-bash---vim | `-bash-+-pstree | `-vim |-thinMS `-udevd
4. Afficher les arguments de ligne de commande donnés à un processus
Syntax: pstree -a
Utilisez l'option -a comme indiqué ci-dessous, pour afficher les arguments de ligne de commande associés à un processus particulier.
$ pstree -a ramesh su bk `-bash |-sh ./test.sh | `-sleep 1000 |-sh ./test.sh | `-sleep 1000 |-sh ./test.sh | `-sleep 1000 `-sh test.sh [1-9] `-sleep 1000
II. Arborescence de répertoires - commande d'arborescence
1. Afficher différentes structures de répertoires
- # arbre / | plus – Exécutez cette commande pour parcourir la structure de répertoires de l'ensemble du système d'exploitation. En règle générale, il n'est pas logique de créer une arborescence sur la structure du répertoire racine, à moins que vous ne soyez en mode d'apprentissage et que vous souhaitiez comprendre la hiérarchie des répertoires de Linux.
- # arbre $HOME – Utilisez ceci pour vérifier le contenu de la structure du répertoire personnel.
- # tree PROJECT-DIR – Vérification de la structure des répertoires d'un projet.
2. Modification de la sortie de la commande tree.
- # arbre -d n'affichera que les répertoires. c'est-à-dire que les fichiers ne seront pas affichés.
- # arbre -a affichera les fichiers cachés avec les répertoires et les fichiers.
- # arbre -s affichera la taille du fichier comme indiqué ci-dessous. Lors de l'utilisation de cette option, il imprime la taille des fichiers avec les noms de fichiers.
# tree -s . |-- [ 4096] Articles | `-- [ 4096] Tree | `-- [ 5489] article |-- [ 4096] Compression | |-- [ 2584] article | `-- [ 4223] article.safe `-- [ 4096] DiskSpace |-- [ 722] article `-- [ 530] old_article 4 directories, 5 files
- # arbre -p affichera les autorisations avec les fichiers. Lors de l'utilisation de cette option, il imprime les autorisations des fichiers avec les noms de fichiers comme indiqué ci-dessous.
# tree -p . |-- [drwx------] Articles | `-- [drwx------] Tree | `-- [-rw-------] article |-- [drwx------] Compression | |-- [-rw-------] article | `-- [-rw-------] article.safe `-- [drwx------] DiskSpace |-- [-rw-------] article `-- [-rw-------] old_article 4 directories, 5 files
3. Générer une sortie HTML à partir de la commande tree
Vous pouvez également rediriger la sortie de la commande tree vers un fichier html comme indiqué ci-dessous à l'aide de l'option -H et -o.
# tree -H . -o output.html
Définition de l'option -H de la page de manuel :
- -H baseHREF : Activez la sortie HTML, y compris les références HTTP. Utile pour les sites ftp. baseHREF donne l'emplacement ftp de base lors de l'utilisation de la sortie HTML. Autrement dit, le répertoire local peut être `/local/ftp/pub', mais il doit être référencé comme `ftp://hostname.organization.domain/pub'
4. Afficher la sortie de l'arborescence en fonction du modèle spécifié
Listez les fichiers qui correspondent au modèle en utilisant l'option -P comme indiqué ci-dessous.
Syntax: tree -P PATTERN
$ tree -P *.safe . |-- Articles | `-- Tree |-- Compression | `-- article.safe `-- DiskSpace
Listez les fichiers qui ne correspondent pas au modèle en utilisant l'option -I comme indiqué ci-dessous.
Syntax: tree -I PATTERN
$ tree -I *.safe . |-- Articles | `-- Tree | `-- article |-- Compression | `-- article |-- DiskSpace | |-- article | `-- old_article `-- t.html
Cet article a été écrit par SathiyaMoorthy, auteur de plugin numbertotext Vim, qui remplacera les nombres par le texte équivalent dans Vim. The Geek Stuff accueille vos conseils et articles invités.