Accueil



Rubriques


Dossiers

 

Entrevues

 

BiblioTech

 

Chroniques

 


Communiqués



Ressources


Infos Technos

 

Organismes

 


Médias



Forum


Réactions et
discussions !




 




Dossiers



Euh... Duh!

Par Michel Dumais

Montréal, le 25 novembre 1998

Vous vous souvenez sans aucun doute de la petite missive que m'a envoyée Joël Pomerleau hier. Celui-ci a pris gentiment la peine de me répondre pour m'expliquer euh...bien, m'expliquer le...du...et...euh, désolé, j'ai encore rien compris. Enfin, ce que je comprends, c'est que Linux est très puissant et très souple. Voici sa réponse (plus quelques PS, comme d'habitude:-):

Michel Dumais

Subject:command line scripting
From:Joel Pomerleau <joel@Cuba.Contre.COM>
To:<dumais@Mlink.NET>
Date:Wednesday, November 25, 1998 11:15 AM

Salut Michel,

Ce qu'il faut comprendre, c'est que Linux travaille de façon modulaire, une couche par dessus l'autre. La console texte (le shell) est plus ou moins la première couche d'accès à ton système. Comme dans le bon vieux temps du DOS et des gros Unix.

Comme Linux est un clône Unix, la première étape fut d'intégrer les fonctionnalités des système Unix, c'est à dire le multi-tasking et les fonctionalités consoles. On retrouve plusieurs types de consoles héritées du passé Unix, tel que le Bourne Shell arrivé sur les environnements Unix vers 1979 et le C shell étant également un des plus populaires.

Avec la fondation du Free software foundation, le Projet GNU a eu besoin d'un shell gratuit et non propriétaire. Et ainsi est né le Bourne again Shell, ou Bash pour les intimes. C'est la version la plus utilisée, même si on retrouve de nombreuses autres alternatives disponibles.

Comme on peut également définir les fonctionnalités du Shell, on choisit un editing mode, soit le VI ou le Emacs editing mode qui, comme leurs noms l'indiquent, reprennent les fonctions de bases des éditeurs les plus populaires et les intégrent, en partie, au shell.

Donc, pour en venir au Command Line Scripting dans Bash, c'est le principe holywoodien du "one-liner". C'est à dire que l'on peut "aligner" les commandes et les rendre inter-dépendantes. Un peu comme si on aurait pu entrer un fichier .bat complet en une ligne dans le DOS. Le principe équivaut à écrire un script de plusieurs ligne mais directement à partir de la console. Comme dans le vieux DOS, si on pouvait lister un répertoire, les mettre en ordre, en extraires des parties, et les renommer, tout ça avec une seule ligne de commande.

La clef, c'est que le shell permet de rediriger un output et un input dans un fichier sur lequel on peut appliquer de nouvelles actions, en une ligne de commande.

Tout ça pour dire que Linux permet encore ce type de contrôle, en mode texte, et de façon très puissante. Les programmeurs et scripteurs avancées, une fois les multiples codes et fonctions démêlés, y trouvent un outil d'administration système très puissant et efficace.

PS: dans mon message d'hier (en plus publié!) j'ai fais une petite erreur. J'aurais du suivre mon conseil et vérifier le Man page avant de t'écrire que le "su -l" te permettait de rebooter le système. En fait, le "-l" te log comme si tu partais un nouveau login shell, donc il vérifie le fichier .bash_profile du root et oublie les paramètres d'environnement du "user" duquel tu fais le "su -l", et prend les paramètres d'environnement du "root". Pour essayer d'être plus clair, en console, le fichier /.bash_profile définit l'environnement et ses fonctions comme les "paths". Chaque user à son fichier .bash_profile. Dans le cas d'un user, le répertoire /sbin n'est pas automatiquement inscrit dans le path, ce qui fait que pour faire un shutdown (et non rebooter (maudite habitude winbug)), il faut préciser le path. Mais en tapant "-l", les répertoires nécessaires au "root user" sont inscrits en mémoire.

Le su sans "-l" te donne les permissions du root, sans pour autant vérifier le fichier .bash_profile. Il garde donc en mémoire les paramètres d'environnement du user duquel tu as entré la commande.

Il s'agit là d'une des multiples fonctionnalités de personnalisation des système Unix qui font en sorte que chacun, sans nuire aux autres, peut se créer des raccourcis, des défauts, etc.

En espérant être cohérent, après tout, j'en ai encore beaucoup à apprendre sur Linux. Disons que j'ai commencé par découvrir Bash et Emacs.

--
Joël Pomerleau
Président
Joel@Contre.COM
Contre-Conceptions s.e.n.c.
Tél.: (514) 393-4096
Fax.: (514) 393-4176

Michel Dumais
   Reproduction autorisée à certaines conditions
Take One!

PS: J'ai recu un magnifique T-Shirt Red Hat. Pourquoi ne pas vous le donner me direz-vous? Et bien, vous avez tout à fait raison. Je veut le donner à quelqu'un. Un Linuxien ou une Linuxienne. Alors, voici mon offre: Exprimez votre fierté d'utiliser Linux!

Vous m'envoyez une saisie d'écran de votre bureau (desktop) Linux en format JPEG ou GIF, avec les informations concernant celui-ci (par exemple, distribution Red Hat 5.2 avec XFree86 et AfterStep ou encore Caldera 1.3 avec KDE), ainsi que votre adresse de courrier électronique. Nous allons faire une page (enfin, Multimédium fera une page:-) avec les photos de vos environnements de travail. Le dimanche 6 décembre, je mettrai les noms de tous ceux qui ont participé dans un grand chapeau rouge ;-)), et je tirerai un gagnant ou une gagnante.

PPS: Les non-Linuxiens, ne vous en faites pas, je trouverai bien le moyen, d'ici Noël, d'organiser un autre petit concours avec de petits cadeaux du même acabit. Tiens, je pense que je vais essayer de soutirer quelques distributions gratuites de Red Hat. Ce serait bien ça, non?

PPPS: Un site bien intéressant qui vient de réouvrir après une refonte complète de sa grille graphique. 32Bits Online.

PPPPS: Macromedia propose sa visionneuse Flash! pour Linux. Ouaip, ça, c'est une indication que Linux commence à être véritablement pris au sérieux. À quand Director pour Linux?

Jour précédent Jour suivant






Copyright © 1996-99 NETgraphe inc. - Tous droits réservés
Hébergement : Mlink Internet