L’interpréteur de commandes sous Linux

 

 

L'interpréteur de commandes

L’interpréteur de commandes (ou plus communément appelé SHELL) est une interface entre l’utilisateur et le système d’exploitation. Il est chargé d’interpréter des commandes ou des fichiers de commandes en fonction des droits d’accès de l’utilisateur. Généralement, il permet aussi de faire des programmes (appelés des scripts, ils seront interprétés par le shell). Vous pouvez ainsi coder une fois pour toute certaines tâches administratives. A noter qu'il existe maintenant d'autres langages de programmation un peu plus performant comme PERL ou PYTHON (le code est interprété), voir le C/C++ (le code est compilé) !

Au niveau du système Unix, il existe plusieurs interpréteurs de commandes, à l'utilisateur de choisir celui qu'il lui convient le mieux.

Il existe deux anciens Shell au niveau du système UNIX : Le Bourne Shell et le CSHELL. Il y a aussi le Korn Shell qui est le shell standard du système V, version 4.0. Enfin, concernant les systèmes Linux, le shell utilisé sera le Bourne Again Shell.

 

Chapitres

- Liste des shells les plus connus disponibles

- Mise en œuvre du Shell

- Le Bourne Shell

  • Les options
  • Filtres et caractères spéciaux
  • Les variables d’environnement
  • Les variables internes du shell
  • Les flux standards
  • Le pipe
  • Primitives d’expression conditionnelle
  • Les structures de contrôle
  • Commandes internes au Bourne Shell
  • Les signaux avec le shell
  • Création de processus fils
  • Les expressions
  • Annexes

- Le Korn Shell

  • Les options
  • Filtres et caractères spéciaux
  • Les variables d’environnement
  • Les variables internes du shell
  • Les flux standards
  • Le pipe
  • Primitives d’expression conditionnelle
  • Les structures de contrôle
  • Commandes internes au Korn Shell
  • Les signaux avec le shell
  • Création de processus fils
  • Les expressions
  • L'arithmétique en Korn Shell
  • Annexes

- Le Bourne Again Shell

- Annexes

  • Paramètres du shell
  • Script lancé automatiquement après connexion
  • fichier /etc/profile, /etc/bashrc
  • fichiers .login, .profile ou .bash_profile
  • fichiers .cshrc, .kshrc ou .bashrc
  • Les scripts

- Exemples de codes shell

Rechercher find à partir d'un chemin (/chemin) et tous ses sous -répertoires dans les fichiers ("*" pour tous) un mot "chaine_rechercher_dans_fichier". Pour tous fichiers trouvés, afficher la ligne contenant le mot (-H) et le numéro de la ligne (-n)

find /chemin -name "*" -exec grep -Hn "chaine_rechercher_dans_fichier" {} \;

Annexes

La liste des shells disponibles sur un système Unix est récupérable dans le fichier /etc/shells