La section 1 du manuel décrit les commandes et les outils de l'utilisateur, comme les outils de manipulation de fichiers, les interpréteurs de commandes (shell), les compilateurs, les navigateurs web, les éditeurs et outils de visualisation de fichiers et d'images, etc.
Toutes les commandes fournissent un code de retour à la fin de leur exécution. Ce code peut être testé (par exemple, pour la plupart des interpréteurs de commandes, la variable $? contient le code de retour de la dernière commande exécutée) pour voir si la commande s'est achevée avec succès. Par convention, un code de retour nul est utilisé pour indiquer la réussite de la commande et un code de retour non nul indique un échec. (Des détails sur le code de retour peuvent être trouvés dans la page wait(2).) Un code de retour non nul peut être dans l'intervalle de 1 à 255, et certaines commandes utilisent des codes de retour différents pour indiquer la raison pour laquelle la commande a échoué.
Linux est une version d'Unix, et en première approximation, toutes les commandes utilisateur sous Unix fonctionnent exactement de la même façon sous Linux (et FreeBSD et beaucoup d'autres clones d'Unix).
Sous Linux il existe des interfaces utilisateur graphiques, où vous pouvez pointer et cliquer sur des composants graphiques et obtenir un résultat sans vous soucier de lire la documentation. L'environnement traditionnel d'Unix est plutôt orienté vers la ligne de commande, où vous tapez les commandes pour les actions désirées. C'est plus rapide et plus puissant, mais nécessite de bien connaître les commandes. Vous trouverez ci-dessous le minimum pour débuter.
Afin de commencer à travailler, vous devrez probablement commencer par vous connecter (vous « loguer » dans le jargon Unix) c'est-à-dire fournir vos nom d'utilisateur et mot de passe. Voir aussi login(1). Le programme login lancera un shell (interpréteur de commandes) pour vous. Dans le cas d'un environnement graphique, vous obtiendrez un écran avec menus et icônes et un clic de souris lancera un interpréteur de commandes dans une fenêtre. Voir aussi xterm(1).
On saisit des commandes pour le shell, l'interpréteur de commandes. Il n'est pas intégré dans le noyau Linux, c'est juste un programme comme un autre. Vous pouvez changer de shell, chacun ayant son favori. Linterpréteur de commandes standard est appelé sh. Voir aussi ash(1), bash(1), csh(1), zsh(1), chsh(1).
Une session peut se dérouler ainsi :
venux login: ccb Password: ******** $ cal juillet 2003 di lu ma me je ve sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 $ ls bin tel $ ls -l drwxr-xr-x 2 ccb ccb 4096 jui 19 13:52 bin -rw-r--r-- 1 ccb ccb 42 jui 26 18:45 tel $ cat tel maja 0501-1136285 peter 0136-7399214 $ cp tel tel2 $ ls -l drwxr-xr-x 2 ccb ccb 4096 jui 19 13:52 bin -rw-r--r-- 1 ccb ccb 42 jui 26 18:45 tel -rw-r--r-- 1 ccb ccb 42 jui 26 18:45 tel2 $ mv tel tel1 $ ls -l drwxr-xr-x 2 ccb ccb 4096 jui 19 13:52 bin -rw-r--r-- 1 ccb ccb 42 jui 26 18:45 tel1 -rw-r--r-- 1 ccb ccb 42 jui 26 18:45 tel2 $ diff tel1 tel2 $ rm tel1 $ grep maja tel2 maja 0501-1136285 $
et en tapant Contrôle-D, la session se termine. Le $ était l'invite de commande - le « prompt » - c'est ainsi que l'interpréteur de commmandes indique qu'il attend la commande suivante. Le prompt peut être personnalisé de nombreuses manières, par exemple en incluant le nom d'utilisateur, de la machine, le répertoire en cours, l'heure, etc. Une affectation PS1="Ensuite, maître ? " remplacera le prompt par la chaîne indiquée.
Dans l'exemple précédent apparaît une commande date (qui donne la date et l'heure), et une commande cal (qui fournit un calendrier).
La commande ls liste le contenu du répertoire en cours - elle vous indique quels sont les fichiers présents. Avec l'option -l, elle donne une description plus longue qui inclut le propriétaire, la taille et la date du fichier avec les permissions dont les gens disposent pour lire, écrire ou modifier le fichier. Par exemple, le fichier tel ici fait 42 octets de long, il appartient à ccb, le propriétaire peut le lire et y écrire, les autres seulement le lire. Le propriétaire et les permissions peuvent être modifiés par les commandes chown et chmod.
La commande cat montre le contenu du fichier.. (Son nom vient de « concaténer et afficher » : tous les fichiers donnés en paramètres sont concaténés et envoyés sur la sortie standard (stdout), en l'occurrence l'écran du terminal.)
La commande cp (de « copy », copier) réalise une copie d'un fichier. Par contre, la commande mv (de « move », déplacer) ne fait que le renommer.
La commande diff affiche les différences entre deux fichiers. Ici, elle n'affiche rien car il n'y a pas de différence.
La commande rm (de « remove », supprimer) supprime le fichier. Soyez prudent ! Il disparaît complètement, il n'y a pas de corbeille temporaire. Supprimer signifie perdre.
La commande grep (de « g/re/p ») recherche les occurrences d'une chaîne dans un ou plusieurs fichiers. Ici, il cherche le numéro de téléphone de Maja.
Les fichiers sont situés dans une grande arborescence, la hiérarchie des fichiers. Chacun dispose d'un chemin d'accès décrivant le chemin depuis la racine de l'arbre (nommée /) jusqu'au fichier. Par exemple, un tel chemin peut être /home/ccb/tel. Il ne serait pas pratique de toujours fournir le chemin complet, et le nom du fichier dans le répertoire courant peut être abrégé en ne donnant que son dernier composant. C'est pourquoi /home/ccb/tel peut être réduit à tel si le répertoire actuel est /home/ccb.
La commande pwd affiche le nom du répertoire en cours.
La commande cd change le répertoire en cours. Essayez « cd / » et « pwd » et « cd » et « pwd ».
La commande mkdir crée un nouveau répertoire.
La commande rmdir supprime un répertoire s'il est vide et refuse sinon.
La commande find (avec une syntaxe un peu baroque) recherche les fichiers avec un nom ou des propriétés donnés. Par exemple, « find . -name tel » recherchera le fichier tel en partant du répertoire courant (qui est nommé « . »). « find / -name tel » fera la même chose en partant de la racine de l'arborescence. Les recherches sur des gros disques peuvent prendre un temps conséquent, et il est parfois préférable d'utiliser locate(1).
La commande mount attachera le système de fichiers se trouvant sur un disque (ou une disquette, un CD-ROM...) dans la grande hiérarchie des systèmes de fichiers, et umount le détachera à nouveau. La commande df vous indiquera quel espace disque est libre.
Sur un système Unix, de nombreux processus utilisateur et système agissent simultanément. Les processus avec lesquels vous dialoguez s'exécutent en avant-plan, les autres en arrière-plan. La commande ps vous montrera quels sont les processus actifs et leurs numéros d'identification. La commande kill permet d'en éliminer. Sans option, il s'agit d'une demande amicale : s'il te plait, termine-toi. Et « kill -9 » suivi du numéro du processus le tuera immédiatement. Les processus à l'avant-plan peuvent souvent être tués en tapant Contrôle-C.
Il existe des centaines de commandes, chacune avec de nombreuses options. Traditionnellement, les commandes sont documentées par des pages de manuel (comme celle-ci), ainsi la commande « man kill » décrira l'utilisation de la commande « kill » (et « man man » documentera la commande « man »). [Ndt : Une grande partie des pages de manuel existe en version française.] Le programme man envoie le texte à travers un programme de pagination, habituellement less. Pressez la barre d'espace pour passer à la page suivante, et « q » pour quitter.
Dans la documentation, on a pour coutume d'indiquer une page de manuel en donnant son nom suivi du numéro de section entre parenthèses, comme man(1). Les pages de manuel sont concises et vous permettent de retrouver vite des détails oubliés. Pour les débutants, un tutoriel avec des exemples et des explications supplémentaires est aussi très utile.
Beaucoup de programmes de la collection GNU sont fournis avec des fichiers info. Tapez « info info » pour savoir comment utiliser le programme « info ».
Les sujets spéciaux sont souvent traités dans des documents HOWTO (qui existent également parfois en version française). Regardez dans /usr/share/doc/howto/fr et utilisez un navigateur web si les fichiers sont en HTML.
Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 25 juillet 2003 et révisée le 4 juillet 2008.
L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 1 intro ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.
Dernière mise à jour : 4 juillet 2008