Manuels en ligne
man
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
lsavec :man ls L'aide qui s'affiche se décompose en plusieurs parties, généralement (mais pas exclusivement) :
- NAME : Rappel du nom de la commande et son libellé en clair
- SYNOPSIS : Modèle générique de l'emploi de la commande
- DESCRIPTION : Explication du fonctionnement de la commande
- OPTIONS : Descriptions des différentes options supportées par la commande
- USAGE : Particularités (par exemple, comportement vis-à-vis de gros fichiers)
- EXAMPLES : Quelques exemples d'emploi, commentés
- ENVIRONMENT VARIABLES : Listing des variables d'environnement unix ayant une action sur la commande et devant éventuellement être convenablement positionnées avant emploi de la commande (les variables d'environnement seront traitées dans la partie suivante sur les shells)
- SEE ALSO : Renvois vers d'autres commandes unix ayant à voir avec la commande documentée
- NOTES : Commentaires complémentaires
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).
Commandes sur les fichiers
find
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 dilibPour afficher la hiérarchie du répertoire courant :
find .
diff
Cette commande permet de comparer deux fichiers
File1etFile2et d'afficher leurs différences éventuelles, ligne à ligne.diff File1 File2 La commande
diffsignale les différences qu'elle trouve à l'aide des codes suivants :-
a: ligne en ajout dansFile2par rapport àFile1 -
d: ligne en suppression dansFile2par rapport àFile1 -
c: lignes changées entreFile2etFile1 -
<: différence constatée dansFile1 -
>: différence constatée dansFile2
À titre d'illustration, soient les fichiers
File1,File2etFile3suivants :File1 File2 File3 a a a b b 1 c c b d e Les commandes
diffqui suivent donneront pour rapports :diff File1 File2
3a4
> ddiff File2 File1
4d3
< ddiff File1 File3
1a2
> 1
3c4
< c
---
> eLigne File1 File2 File3 1 a a a 2 b b 1 3 c c b 4 d e L'option
-cde la commandediffpermet d'avoir un rapport plus lisible, notamment dans le cas de comparaison de gros fichiers.-
Commandes sur les contenus
cut
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 A 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
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 dans le menu principal.