Actualité

Divers

script shell, kesako ?

Par Contributeur - Publié le

Je profite des résultats du sondage favorable à mon cher terminal (pour l'instant…) pour vous parler d'une autre unixerie: le script shell

En effet je me suis rendu compte récemment que ce concept n'était pas limpide pour tout le monde et c'est donc l'occasion de faire un petit topo.

Tout d'abord, il faut savoir qu'un script shell est, tout comme un applescript, un executable non-compilé mais seulement interprété. La différence majeure entre langage interprété et langage compilé est que le dernier est plus rapide mais que le premier peut être modifié à tout moment (en gros…).

Pour faire un script shell donc, il suffit d'un fichier texte auquel vous donnerez les permissions d'execution (chmod +x lefichier pour ceux qui auraient oublié…). Ce fichier texte commence toujours par la ligne précisant le chemin de l'interpréteur: la ligne shebang. Elle s'écrit de la façon suivante:
#! /bin/sh (par exemple)

Ensuite viennent les commandes. Vous pouvez utiliser tous les outils en ligne de commande que vous voulez à condition de respecter leur syntaxe propre. En fait ce qui se passe dans un script shell est à peu près la même chose que dans un terminal, sauf que comme son nom l'indique, le script permet d'automatiser l'enchainement des commandes.

Pour la programmation avançée, il existe des mécanismes propres à l'interpréteur (le shell). bash par exemple en propose de nombreux et est très utilisé pour cette raison… mais c'est une autre histoire: je vous en reparlerai un autre jour, si vous êtes toujours d'accord…