Accueil Humour Macintosh Print66 Sélection Éditeur
  MacOS X | MacOS classique | Pourquoi ?
Cet élément comporte 5 parties :   Intro | 1 |2 | 3 | 4 | << Préc | Suiv >>

L'utilisation d'un shell

Je suis persuadé que ce que je vais présenter ci-après sera parfaitement inutile pour la plupart des utilisateurs de la version finale de MacOS X. En fait, c'est déjà largement inutile pour les utilisateurs de la version beta publique, mais ce qui suit permettra aux fanas de technologie de comprendre à quel point la simplicité de MacOS liée à la souplesse et l'ouverture d'Unix changeront en profondeur notre perception de ce que doit être un système d'exploitation moderne.

Un shell permet de soumettre des commandes de type texte à votre ordinateur. Pour relativiser l'importance et la complexité de ce qui suit, MacOS pouvait déjà être contrôlé par des commandes de type texte, via AppleScript... que beaucoup d'utilisateurs Mac ne connaissaient que de très loin, sans pourtant en souffrir. Avec la version X, MacOS continue d'avoir l'excellent AppleScript, mais hérite aussi de shells de type Unix, comme tcsh ou zsh, et d'autres langages de commandes sophistiqués comme Perl. On peut les ignorer totalement, s'en servir comme M. Jourdain faisait de la prose grâce à des scripts "tout faits" fournis par des tiers, ou s'y intéresser un peu plus pour savoir ce que l'on peut en tirer, ce qui est mon cas...

Personnalisation de tcsh

Tcsh est le shell proposé par défaut par l'application Terminal.

Une configuration par défaut de tcsh a été définie par l'intermédiaire des fichiers présents dans le répertoire /usr/share/init/tcsh/. On peut s'inspirer des fichiers présents dans ce répertoire pour créer ses propres fichiers de configuration et les mettre dans le répertoire ~/Library/init/tcsh/ (~ représente votre répertoire "Home", soit /Users/votre_nom_utilisateur).

Voici un aliases.mine qui permet de définir ou redéfinir des commandes :

Exemple de fichier aliases.mine
### TCSH Expanded C-Shell INITIALIZATION FILE
# Aliases file#
alias edit    'pico'                 # pico est un editeur simple
alias dir    'ls -lgAF \!* | more'   # ls liste les fichiers
                                     # more insere une pause entre ecrans
alias type    'less -E'              # less insere une pause entre ecrans
                                     # less est plus sympa que more...

 

J'espère que vous aurez compris que # définit un commentaire...Je définis dans ce script un certain nombre de "pseudo-commandes" qui ont l'avantage de préserver quelques habitudes héritées de... MS-DOS.

J'espère que vous aurez compris que # définit un commentaire... Je définis dans ce script un certain nombre de "pseudo-commandes" qui ont l'avantage de préserver quelques habitudes héritées de... MS-DOS. Mais on perçoit tout de suite qu'on ne peut comparer les souplesses d'Unix et celui de MS-DOS : la pseudo-commande "dir" que je définis est très personnalisée. Elle fournit beaucoup plus de détails que la commande par défaut pour lister les fichiers, et effectue une pause entre chaque page, ce que je trouve nettement plus confortable. Vous êtes libres d'avoir d'autres préférences, et vous n'avez qu'à taper une commande "man ls" pour en apprendre plus sur les différentes options existantes pour lister un fichier, et combiner cette commande avec d'autres à l'instar des exemples précédents... Mieux, vous pouvez redéfinir les options par défaut de toute commande existante.

Certains vont me dire qu'en multipliant les fichier .BAT, il serait possible de reproduire ce genre de personnalisation en environnement Microsoft. Certes, mais l'élégance de la solution Unix est quand même très supérieure,et les .BAT ou .CMD arrivent très vite à leur limite, alors que l'exemple ci-dessus ne montre qu'une microscopique portion de la capacité d'un shell Unix (sans même évoquer les outils encore plus sophistiqués comme Perl).
Cet élément comporte 5 parties :   Intro | 1 |2 | 3 | 4 | << Préc | Suiv >>
  MacOS X | MacOS classique | Pourquoi ?