Manuel de l'Utilisateur Expérimenté Solaris

Chapitre 2 Commandes SunOS de base

Ce chapitre présente une introduction aux commandes utilisateur du système d'exploitation SunOS. Il explique comment saisir les commandes, corriger les fautes de frappe, saisir plusieurs commandes ou des commandes longues et utiliser les options de commande. Il fournit en outre d'autres indications utiles.

Pour entrer des commandes, vous devez utiliser la fenêtre Utilitaire de commande ou Utilitaire Shell. Pour afficher l'une ou l'autre de ces fenêtres, sélectionnez l'option Menu à partir de l'Espace de travail.

Le prompt de commande

Une fois que vous êtes connecté, l'écran ou la fenêtre qui apparaît contient uniquement le prompt initial. La nature de ce prompt varie selon l'interpréteur de commande Shell utilisé et la façon dont l'administrateur système l'a initialement configuré. Le prompt de commande par défaut du système d'exploitation SunOS étant le signe dollar ($), c'est le prompt qui est utilisé dans la plupart des exemples de ce manuel.

Si vous décidez par la suite de modifier le prompt de commande, reportez-vous à la section "Modification de votre prompt de commande"", dans le chapitreChapitre 10", pour connaître la procédure à suivre.

Saisie des commandes

La présence du prompt de commande indique que le système attend une action de votre part. Commencez par entrer la commande date au prompt, comme indiqué dans cet exemple (en tapant date et en appuyant sur la touche Return) :

$ date
Mon Feb 3 10:12:51 PST 1992
$

Comme vous le voyez, cette commande affiche la date et l'heure en cours. Entrez à présent la même commande, mais commençant par une majuscule :

$ Date
Date: Commande introuvable.
$

Comme vous le voyez, le système n'interprète pas le D majuscule de la même façon que le d minuscule. Presque toutes les commandes du système d'exploitation SunOS sont en minuscules.

Correction des fautes de frappe

Supposons que vous commenciez à taper la commande Date et que vous vous aperceviez que vous avez fait une erreur avant d'appuyer sur la touche Return. Le texte que vous avez tapé n'est envoyé au système que lorsque vous avez appuyé sur Return. Vous pouvez donc corriger votre erreur. Pour cela, vous avez deux possibilités :

Essayez ces deux méthodes pour voir comment elles fonctionnent. (Si les touches Del/Back Space peuvent être différentes selon les systèmes, la combinaison Ctrl-U fonctionne, en revanche, sur la plupart des systèmes.)

Saisie de plusieurs commandes et de commandes longues

Vous pouvez entrer plusieurs commandes sur une même ligne. Il suffit de les séparer par un point-virgule (;), comme illustré ci-dessous pour les commandes date et logname :

$ date; logname
Mon Feb 3 10:19:25 PST 1992
bernard
$

Comme vous le voyez, l'exemple ci-dessus permet d'afficher la date et l'heure en cours (via la commande date), ainsi que le nom de connexion de l'utilisateur actuellement connecté au système (via la commande logname).

Si la commande que vous tapez est très longue, vous pouvez utiliser la barre oblique inversée (\) pour continuer la saisie sur une autre ligne. Exemple :

$ date; \
logname
Mon Feb 3 10:23:25 PST 1992
bernard
$

Bien qu'il ne s'agisse pas de commandes longues, date et logname sont utilisées dans cet exemple pour illustrer de la façon la plus simple le principe de continuité des commandes sur la ligne suivante. Vous verrez par la suite, lorsque les commandes que vous voudrez utiliser seront trop longues pour tenir sur la largeur de l'écran, que l'emploi de la barre oblique inversée peut être extrêmement utile.


Remarque :

si vous utilisez les fenêtres Utilitaire Shell ou Utilitaire de commande de l'environnement OpenWindows, vous n'avez plus besoin de la barre oblique inversée pour continuer la saisie des commandes sur la ligne suivante. En effet, lorsque vous arrivez en fin de ligne, les commandes que vous tapez sont automatiquement renvoyées à la ligne suivante et le système exécute toutes les commandes une fois que vous avez appuyé sur Return.


Répétition des commandes antérieures


Remarque :

les fonctions de répétition de commande décrites dans cette section ne sont disponibles qu'avec le C Shell.


Un moyen rapide de répéter la dernière commande consiste à taper !! et à appuyer sur Return. Le système conserve l'historique des commandes que vous avez tapées et peut répéter ces commandes. Par exemple, si la dernière commande que vous avez entrée est date :

exemple% !!
date
Mon Feb 3 10:26:20 PST 1992
exemple%

Vous pouvez également répéter n'importe quelle commande antérieure en tapant !x, où x est le numéro correspondant à la commande voulue sur la liste de l'historique. Pour afficher cette liste, tapez la commande history et appuyez sur Return. Voici un exemple de ce que vous voyez apparaître :

exemple% history
1  pwd
2  clear
3  ls -l
4  cd /usr/home/worker
5  logname
6  date
7  history

Une autre méthode pour répéter certains éléments de la liste de l'historique consiste à faire suivre le caractère ! d'un nombre négatif. Par exemple, pour répéter la troisième commande en partant de la fin dans la liste de l'historique, tapez :

exemple% !-2
logname
bernard
exemple%

Lorsque vous utilisez la liste exemple ci-dessus, la commande logname est répétée.

Une troisième méthode consiste à faire suivre le caractère ! des premiers caractères de l'une des commandes antérieures. Par exemple, si vous avez entré précédemment la commande clear pour effacer le contenu de votre écran, vous pouvez taper !cl pour répéter cette commande. Toutefois, avec cette méthode de répétition des commandes, veillez à indiquer suffisamment de caractères pour différencier la commande dans la liste de l'historique. Si vous n'entrez qu'une lettre après le !, le système répétera la dernière commande commençant par cette lettre.

Ajout d'options de commande

De nombreuses commandes sont dotées d'options qui permettent d'appeler des fonctions spéciales. Par exemple, la commande date comprend l'option -u, qui exprime la date au format GMT au lieu de l'heure locale :

$ date -u
jeudi,  7 septembre 1995, 11:14:02 BST
$

La plupart des options sont représentées par un caractère unique précédé d'un tiret (-). Certaines commandes ne comportent pas d'options tandis que d'autres en possèdent plusieurs. Si vous utilisez plusieurs options pour une même commande, vous pouvez taper ces options séparément ( -a -b) ou ensemble (-ab).

Redirection et transmission par pipe du résultat d'une commande

Par défaut, le résultat des commandes est affiché à l'écran. Toutefois, il existe des symboles spéciaux permettant de rediriger ce résultat. Vous pouvez, par exemple, le sauvegarder dans un fichier au lieu de l'afficher à l'écran. L'exemple suivant illustre l'utilisation du symbole de redirection (>) :

$ date > sample.file
$ 

Dans cet exemple, le résultat de la commande date est redirigée vers un nouveau fichier, appelé sample.file. Le contenu de sample.file est ensuite affiché à l'aide de la commande more :

$ more sample.file
jeudi,  7 septembre 1995, 11:14:02 BST
$

Comme vous le voyez, sample.file contient à présent le résultat de la commande date. (Pour plus d'informations sur la commande more, reportez-vous a Chapitre 3".)

Vous pouvez parfois être appelé à rediriger le résultat d'une commande vers une autre commande. Un jeu de commandes chaînées les unes aux autres de cette façon est appelé pipe-line. Le symbole utilisé pour ce type de redirection est une barre verticale (|), appelée pipe.

Au lieu de sauvegarder le résultat d'une commande dans un fichier, il peut arriver notamment que vous vouliez le rediriger vers une commande d'impression (lp) à l'aide du symbole (|). Pour envoyer le résultat de la commande date directement à l'imprimante, entrez les commandes suivantes :

$ date | lp
$

Cette combinaison imprime le résultat de la commande date. (Pour plus d'informations sur l'utilisation de la commande lp pour imprimer des fichiers, reportez-vous à la section "Soumission de requêtes d'impression à l'imprimante par défaut"", dans le chapitreChapitre 8".)

Les exemples de redirection de commande présentés ici sont très simples, mais lorsque vous utiliserez des commandes avancées, vous découvrirez que les fonctions de redirection et de transmission par pipe ont une multitude d'applications possibles.

Exécution de commandes en arrière-plan

Il peut être pratique de lancer une commande à partir du prompt de commande, puis de la placer en arrière-plan. Lorsque la commande ne se trouve pas en arrière-plan, le prompt suivant n'apparaît qu'une fois la tâche correspondante exécutée. Toutefois, certaines tâches étant relativement longues, il est appréciable de pouvoir entrer d'autres commandes au cours de leur exécution.

Pour exécuter une commande en arrière-plan, il suffit de taper une perluète (&) à la suite de cette commande. Le nombre qui suit est l'identificateur de processus :

$ bigjob &
[1] 21414
$ 

La commande bigjob est désormais exécutée en arrière-plan et vous pouvez continuer à entrer des commandes pendant ce temps. Une fois le travail terminé, vous verrez apparaître un message du type suivant lorsque vous entrerez à nouveau une commande, comme la commande date dans cet exemple :

$ date
jeudi,  7 septembre 1995, 11:14:02 BST
[1]  + Done    bigjob
$ 

Si vous risquez de vous déconnecter pendant l'exécution d'un travail en arrière-plan, utilisez la commande nohup (pas d'interruption) pour demander au système d'achever le travail en cours, comme indiqué dans cet exemple. Sinon, celui-ci sera interrompu lorsque vous vous déconnecterez :

$ nohup bigjob &
[1] 21414
$ 

Aide en ligne sur les commandes OS

Cette section décrit différentes fonctions d'aide en ligne qui vous permettent de consulter des informations de référence depuis votre station de travail ou votre terminal.


Remarque :

les fonctions décrites ici forment le complément des utilitaires d'aide OpenWindows.


Affichage des pages manuel avec man

Si vous connaissez le nom d'une commande mais que vous n'êtes pas sûr de sa fonction, la commande man peut vous être utile. Pour plus d'informations sur cette commande, tapez :

$ man man

Cette commande affiche la première partie des pages manuel SunOS dans la fenêtre. Appuyez sur la barre d'espacement pour visualiser l'écran suivant ou appuyez sur la touche Q pour quitter et retourner au prompt de commande. Utilisez la commande man pour visualiser toutes les commandes disponibles et afficher leur syntaxe. Les pages manuel contiennent de nombreux exemples illustrant les différentes utilisations d'une commande.

Affichage d'un résumé d'une ligne avec whatis

Pour afficher simplement un résumé d'une ligne sur la fonction d'une commande, utilisez la commande whatis, comme indiqué ici :

$ whatis date
date (1)           -display or set the date
$

Dans l'exemple ci-dessus, notez le numéro entre parenthèses figurant après le nom de la commande. Il indique la section à laquelle appartient la commande. Les commandes sont regroupées en diverses catégories selon leur fonction. La plupart des commandes utilisateur font partie de la section 1. Par convention, le numéro de section est affiché entre parenthèses après le nom de la commande. Si vous cherchez la page manuel imprimée correspondant à une commande donnée, vous la trouverez classée par ordre alphabétique à l'intérieur de ce groupe.

Recherche par mots-clés avec apropos

Supposons que vous connaissiez la fonction que vous voulez exécuter mais que vous ne soyez pas sûr de la commande à utiliser. La commande apropos peut vous être utile dans ce cas. Elle localise les commandes en effectuant une recherche par mots-clés. apropos affiche en effet la liste de toutes les commandes dont le résumé d'une ligne contient l'un des mots-clés que vous avez entrés. Cette opération peut être longue car certains mots-clés apparaissent souvent.

Afin d'obtenir quelques exemples de résultats de la commande apropos, entrez une ou plusieurs commandes parmi les suivantes :

Si vous entrez un mot-clé qui génère un affichage anormalement long, vous pouvez appuyer sur Ctrl-C pour interrompre la procédure et retourner au prompt de commande. (Maintenez la touche Control enfoncée et appuyez sur "c".)