Cette commande permet d'obtenir le manuel unix en ligne de toute commande unix :
man [unixCommand]
Par exemple, on obtient l'aide en ligne (en anglais) sur la commande ls
avec :
man ls
L'aide qui s'affiche se décompose en plusieurs parties, généralement (mais pas exclusivement) :
N'oubliez jamais de consulter le man quand vous voulez en connaître plus sur une commande, une fonction C, ou n'importe quoi d'autre (essayez man colors (obsolète)).
💡 Les mans ont évolué jusqu'à ne presque plus contenir d'exemples, les rendant beaucoup plus hermétiques.
Utilisez tldr pour avoir les exemples principaux pour une commande: https://tldr.sh/
Cette commande permet de rechercher un fichier ou un groupe de fichiers dans une arborescence unix. La recherche peut porter sur le nom du fichier, son propriétaire ou un groupe d'utilisateurs (ou bien d'autres critères, voir le man).
Pour retrouver un fichier par son nom ou par un masque (pattern) de celui-ci à partir du répertoire courant :
find . -name table*
Pour retrouver un (des) fichier(s) appartenant à un utilisateur particulier ou à un groupe particulier :
find . -user parmentf find . -group dilib
Pour afficher la hiérarchie du répertoire courant :
find .
Cette commande permet de comparer deux fichiers File1
et File2
et d'afficher leurs différences éventuelles, ligne à ligne.
diff File1 File2
La commande diff
signale les différences qu'elle trouve à l'aide des codes suivants :
a
: ligne en ajout dans File2
par rapport à File1
d
: ligne en suppression dans File2
par rapport à File1
c
: lignes changées entre File2
et File1
<
: différence constatée dans File1
>
: différence constatée dans File2
À titre d'illustration, soient les fichiers File1
, File2
et File3
suivants :
File1 | File2 | File3 |
---|---|---|
a | a | a |
b | b | 1 |
c | c | b |
d | e |
Les commandes diff
qui suivent donneront pour rapports :
$ diff File1 File2 3a4 > d $ diff File2 File1 4d3 < d $ diff File1 File3 1a2 > 1 3c4 < c --- > e
Ligne | File1 | File2 | File3 |
---|---|---|---|
1 | a | a | a |
2 | b | b | 1 |
3 | c | c | b |
4 | d | e |
L'option -c
de la commande diff
permet d'avoir un rapport plus lisible, notamment dans le cas de comparaison de gros fichiers.
Cette commande permet de récupérer une ou plusieurs parties d'une chaîne de caractères, par exemple en précisant le délimiteur séparant les parties à extraire.
Pour récupérer le numéro de département d'un code postal :
$ echo 54500 | cut -c1-2 54
Pour récupérer une partie d'une ligne avec un délimiteur, avec une variable ligne="auteur,titre,descripteurs,id"
:
$ echo $ligne | cut -d, -f2,4 titre,id
À noter que si le délimiteur est un caractère spécial du shell, par exemple le pipe |
ou le point-virgule, il faut le protéger entre guillemets.
$ echo $ligne | cut -d"|" -f2 titre
Sed (pour Stream EDitor) est un éditeur non interactif de texte.
Il permet d'appliquer une certain nombre de commandes à un fichier puis d'en afficher le résultat (sans modifier le fichier de départ) sur la sortie standard.
Comme avec toute commande unix, il est possible de rediriger la sortie vers un fichier résultat.
Voir Sed.