Bonjour mon ami, j’espère que tu as pratiqué les commandes montrées hier. Aujourd’hui, nous poursuivrons avec d’autres commandes pour nous familiariser avec le terminal, telles que man, apropos, which, whatis, locate et find.
Pages d’homme
Les pages de manuel fournissent de la documentation sur les commandes de la ligne de commande. “man“est le nom du programme qui permet de visualiser ces pages. Regardons la page de manuel de la commande“whoami“. Cette question a également été abordée brièvement au cours de la première journée.
Commandes utilisateur WHOAMI(1) WHOAMI(1) NOM whoami - imprime l'identifiant de l'utilisateur effectif SYNOPSIS whoami[OPTION].... DESCRIPTION Imprime le nom d'utilisateur associé à l'ID d'utilisateur effectif actuel. Identique à id -un. --help affiche cette aide et quitte --version fournit des informations sur la version et quitte l'application. AUTEUR Écrit par Richard Mlynarik. ...
Le contenu des pages du manuel est organisé en sections numérotées comme suit :
Section | Contenu |
1 | Commandes utilisateur |
2 | Interfaces de programmation pour les appels système du noyau |
3 | Interfaces de programmation avec la bibliothèque C |
4 | Fichiers spéciaux tels que les nœuds de périphériques et les pilotes |
5 | Formats de fichiers et conventions |
6 | Jeux et économiseurs d’écran |
7 | Divers |
8 | Commandes et démons d’administration du système |
Par défaut, une recherche avec le fichier “man“nous obtiendrons les résultats de la première section. Cependant, nous pouvons ajouter l’option “-k“pour rechercher un mot-clé dans la documentation de toutes les sections. Essayons avec la section “passwd“.
chgpasswd (8) - met à jour les mots de passe des groupes en mode batch chpasswd (8) - met à jour les mots de passe en mode batch expect_mkpasswd (1) - génère un nouveau mot de passe, l'applique éventuellement à un utilisateur gpasswd (1) - administre /etc/group et /etc/gshadow ...
Nous recevons de nombreux ordres, mais celui dont nous avions besoin se cache quelque part entre les deux. Nous devons limiter notre recherche à l’aide d’expressions régulières. Vous pouvez consulter la
page
pour mieux comprendre les expressions régulières et vous entraîner sur ce
site web
ou sur votre ligne de commande.
Dans l’exemple ci-dessous, nous avons utilisé un caret(^) et un signe de dollar($) pour faire correspondre la ligne entière et éviter les correspondances de sous-chaînes.
passwd (1) - modification du mot de passe de l'utilisateur passwd (1ssl) - calcul des hachages de mots de passe passwd (5) - le fichier des mots de passe
Vous pouvez maintenant utiliser le numéro de section (5) ci-dessus pour effectuer une recherche spécifique.
Apropos comme alternative pour l’homme -k
Comme nous l’avons vu plus haut,“man -k” recherche un mot-clé dans la description des commandes (sans utiliser d’expressions régulières).“apropos” fait de même, mais sans ajouter l’option“-k“.
Vous pouvez essayer par vous-même en tapant“man -k passwd” &“apropos passwd“, les résultats devraient être les mêmes.
chgpasswd (8) - met à jour les mots de passe des groupes en mode batch chpasswd (8) - met à jour les mots de passe en mode batch expect_mkpasswd (1) - génère un nouveau mot de passe, l'applique éventuellement à un utilisateur gpasswd (1) - administre /etc/group et /etc/gshadow grub-mkpasswd-pbkdf2 (1) - génère un mot de passe haché pour GRUB ...
Recherche de fichiers avec “which”
Supposons que vous ayez deux versions du même programme sur votre ordinateur. Vous pouvez donc utiliser la mention “qui“pour savoir quelle version votre interpréteur de commandes utilisera.
La commande “which” recherche dans les répertoires définis dans le $PATH variable d’environnement. Le $PATH n’est qu’une collection de chemins, chacun d’entre eux pointant vers un répertoire. Nous pouvons utiliser la mention “echo“pour connaître les répertoires de notre chemin d’accès.
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
La liste de sortie sépare chaque chemin par des deux points (
:
). La commande“which” lance la recherche de gauche à droite. Le premier chemin sera donc“/usr/local/sbin“, puis“/usr/local/bin” et ainsi de suite. Testons cela en tapant“which apropos“.
/usr/bin/apropos
La commande par défaut s’arrête lorsqu’elle trouve un résultat. Cependant, si nous utilisons l’option -a (tous),“which” continuera à chercher.
/usr/bin/apropos /bin/apropos
Ci-dessus, il liste toutes les correspondances trouvées dans les répertoires de notre environnement $PATH, en commençant sa recherche de gauche à droite. Regardons-les maintenant et voyons la différence. Consultez le jour 1 pour la commande ls.
┌──(kali㉿kali)-[~] └─$ ls -l /bin/apropos lrwxrwxrwx 1 root root 6 Jul 5 05:06 /bin/apropos -> whatis
“ls” (liste),“-l” (longue liste). Le“5” précédant l’heure (05:06) est la taille de l’exécutable en octets (peut être comparée à la taille des fichiers que nous trouvons). Après vérification, nous constatons qu’ils font référence au même lien symbolique ou raccourci, appelé“whatis“.
Testons cette nouvelle commande :
┌──(kali㉿kali)-[~] └─$ man -k '^passwd$' passwd (1) - changer le mot de passe de l'utilisateur passwd (1ssl) - calculer les hachages de mots de passe passwd (5) - le fichier des mots de passe
Résumé : la commande“whatis” peut être utilisée comme une alternative à la commande“man” utilisée avec l’option“-k” et l’expression régulière “^” et “$“, ce qui est beaucoup plus facile à retenir.
Il n’y avait aucune différence entre ces deux fichiers, à l’exception de leur répertoire. Pour en avoir le cœur net, vérifions les deux versions avec la fonction “–version“.
┌──(kali㉿kali)-[~] └─$ /bin/apropos --version apropos 2.9.3
Une autre façon de “localiser” les fichiers
Le “localiserLa commande “locate” est le moyen le plus rapide de trouver l’emplacement des fichiers et des répertoires dans Kali. Contrairement à la commande“which“, “locate” recherche dans une base de données intégrée nommée“locate.db” plutôt que sur l’ensemble du disque dur. Cette base de données est mise à jour automatiquement et régulièrement par le planificateur cron. Mais nous pouvons également mettre à jour manuellement la base de données “locate.db” à l’aide de la commande“updatedb” pour être à jour à la minute près. Nous devons exécuter la commande avec les privilèges d’administrateur(sudo).
┌──(kali㉿kali)-[~] └─$ locate whoami /whoami.txt /home/kali/Desktop/whoami.txt /usr/bin/ldapwhoami /usr/bin/whoami /usr/share/bash-completion/completions/ldapwhoami /usr/share/man/man1/ldapwhoami.1.gz /usr/share/man/man1/whoami.1.gz /usr/share/windows-resources/binaries/whoami.exe
La forme de base de la commande“locate” localise tous les fichiers du système de fichiers, en commençant par la racine, comme nous l’avons vu ci-dessus. Les résultats contiennent tout ou partie des critères de recherche. Consultez le jour 0 pour mieux comprendre la norme de hiérarchie des systèmes de fichiers(FHS).
Supposons que nous voulions trouver les fichiers ou les répertoires qui contiennent uniquement nos critères de recherche :
La commande find
est celui avec lequel nous pouvons être le plus flexibles, mais il faut du temps pour le maîtriser. Il nous permet de rechercher des fichiers dont nous connaissons les noms approximatifs. Il permet de rechercher des fichiers en fonction de leur âge, de leur taille, de leur nom, de leur propriétaire, de l ‘horodatage, du groupe, du type, des autorisations, de la date et d’autres critères. Cela peut s’avérer assez délicat.
Pour effectuer ces recherches, nous utiliserons des caractères génériques. Les jokers sont des symboles utilisés pour remplacer ou représenter un ou plusieurs caractères. Les symboles de remplacement les plus courants sont le point d’interrogation ( ? ), qui représente un seul caractère, et l’astérisque ( * ), qui représente n’importe quelle chaîne de caractères.
Le premier caractère ( / ) après la commande find sert à spécifier le répertoire de départ de notre recherche récursive.
Pour que“find” effectue une recherche à partir du dossier racine, nous utiliserons“find /“.
À partir du dossier d’accueil,“trouver ~” et à partir du dossier en cours, “trouver .“
Il y a beaucoup de choses à explorer avec la fonction “trouvercommande “. Vous pouvez consulter la page de manuel pour plus d’informations.
Remarque: Par défaut, la commande find est sensible à la casse. Si vous souhaitez que la recherche d’un mot ou d’une phrase ne tienne pas compte des majuscules et des minuscules, utilisez le bouton “-iname” avec la commande“find“. Il s’agit de la version insensible à la casse de la commande“-name“.
Il existe une autre commande de recherche, la commande“whereis“. C’est à vous de l’explorer.
0 Comments