projman/hlp/fr/tcl/tclsh.htm

49 lines
5.9 KiB
HTML
Raw Normal View History

2015-10-19 13:27:31 +03:00
<HTML><HEAD>
<BASEFONT FACE="Times New Roman" SIZE="2" COLOR="#000000">
</HEAD>
<BODY>
<div><H3><b>tclsh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tcl Applications</b></H3></div>
<HR ALIGN="center">
<div><b>NOM</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">tclsh - Simple shell contenant un Interpr<70>teur Tcl
</div><br>
<div><b>SYNTAXE</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><b>tclsh</b> ?<i>fileName arg arg ...</i>?
</div><br>
<div><b>DESCRIPTION</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><b>Tclsh</b> est une application shell-like qui lit les commandes Tcl <20> partir de son entr<74>e standard ou <20> partir d'un fichier et les <20>value. Si appel<65>e sans arguments alors s'ex<65>cute interactivement, en lisant les commandes Tcl de l'entr<74>e standard et affichant les r<>sultats et les message d'erreurs sur la sortie standard. Elle s'ex<65>cute jusqu'<27> ce que la commande <A HREF="106.htm"><b>exit</b></A> soit appel<65>e ou jusqu'<27> ce que la fin-de-fichier soit atteinte sur son entr<74>e standard. S'il existe un fichier <b>.tclshrc</b> (ou <b>tclshrc.tcl</b> sur les plateformes Windows) dans le r<>pertoire home de l'utilisateur, <b>tclsh</b> <20>value le fichier comme script Tcl juste avant de lire la premi<6D>re commande sur l'entr<74>e standard
</div><br>
<div><b>FICHIERS SCRIPT </b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">Si <b>tclsh</b> est appel<65> avec des arguments alors le premier argument est le nom d'un script et tous les arguments suppl<70>mentaires sont rendus disponibles au script comme variables (voir ci-dessous). Au lieu de lire les commandes <20> partir de l'entr<74>e standard <b>tclsh</b> lira les commandes Tcl du fichier indiqu<71>;&nbsp; <b>tclsh</b> finira quand il atteint la fin du fichier. Il n'y a pas d'<27>valuation automatique de <b>.tclshrc</b> dans ce cas, mais le script peut toujours le <A HREF="163.htm"><b>source</b></A>r si d<>sir<69>. </div>
<div ALIGN="LEFT" style="margin-left: 51px;">Si vous cr<63>er un script Tcl dans un fichier dont premi<6D>re ligne est </div>
<div ALIGN="LEFT" style="margin-left: 102px;"><b>#!/usr/local/bin/tclsh</b></div>
<div ALIGN="LEFT" style="margin-left: 51px;">alors vous pouvez appeller le script directement <20> partir de votre shell si vous rendez le fichier ex<65>cutable. Ceci suppose qui <b>tclsh</b> aura <20>t<EFBFBD> install<6C> dans l'emplacement par d<>faut dans /usr/local/bin;&nbsp; s'il est install<6C> ailleurs vous aurez <20> modifier la ligne plus haut. De nombreux syst<73>mes UNIX n'autorisent pas la ligne <b>#!</b> <20> d<>passer 30 caract<63>res, donc soyez s&ucirc;rs que l'ex<65>cutable <b>tclsh</b> peut <20>tre acc<63>d<EFBFBD> avec un nom de chemin court. </div>
<div ALIGN="LEFT" style="margin-left: 51px;">Une meilleure approche est de commencer vos fichiers script avec les trois lignes suivantes: </div>
<div ALIGN="LEFT" style="margin-left: 102px;"><b>#!/bin/sh</b> <b><br>
</b><b># la ligne suivante lance tclsh&#92;<br>
</b><b>exec tclsh &quot;&#36;0&quot; &quot;&#36;@&quot;</b></div>
<div ALIGN="LEFT" style="margin-left: 51px;">Cette approche a trois avantages sur l'approche pr<70>cedente. Premi<6D>rement, l'emplacement du binaire <b>tclsh</b> n'a pas d'<27>tre cod<6F> en dur dans le script: il peut <20>tre n'importe o<> dans votre chemin de recherche shell. Deuxi<78>mement, elle resout la limite de 30 caract<63>res pour le nom de chemin dans la pr<70>cedente approche. Troisi<73>mement, cette approche fonctionnera m<>me si <b>tclsh</b> est lui-m<>me un shell script (c'est fait sur quelques syst<73>mes de mani<6E>re <20> g<>rer de multiples architectures ou syst<73>mes d'exploitations: le script <b>tclsh</b> selectionne un parmi plusieurs binaire <20> ex<65>cuter) Les trois lignes mettent en cause <20> la fois <b>sh</b> et <b>tclsh</b> pour traiter le script, mais <A HREF="105.htm"><b>exec</b></A> est seulement ex<65>cut<75> par <b>sh</b>. <b>sh</b> traite le script en premier; il traite la seconde ligne comme un commentaire et ex<65>cute la troisi<73>me ligne. L'instruction <A HREF="105.htm"><b>exec</b></A> provoque l'arr<72>t du traitement par le shell et le d<>marrage de <b>tclsh</b> pour traiter le script entier. Quand <b>tclsh</b> d<>marre, it traite les trois lignes comme des commentaires, car le backslash <20> la fin de la second ligne cause l'interpr<70>tation de la troisi<73>me ligne comme suite du commentaire sur la seconde ligne <br>
</div><br>
<div><b>VARIABLES</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><b>Tclsh</b> fixe les variables Tcl suivantes:
<DL>
<DT><b>argc</b></DT><DD>Contient un compte du nombre des arguments <i>arg</i> (0 si aucun), non inclus le nom du fichier script.
</DD>
<DT><br><b>argv</b>
</DT><DD>Contient une liste Tcl dont les <20>l<EFBFBD>ments sont les arguments<i> arg</i>, dans l'ordre, ou une cha<68>ne vide si il n'y a pas d'arguments<i> arg</i>.
</DD>
<DT><br><b>argv0</b>
</DT><DD>Contient <i>fileName</i> si il a <20>t<EFBFBD> sp<73>cifi<66>. Autrement, contient le nom par lequel <b>tclsh</b> a <20>t<EFBFBD> appel<65>.
</DD>
<DT><br><b>tcl_interactive</b>
</DT><DD>Contient 1 si <b>tclsh</b> s'ex<65>cute interactivement (aucun <i>fileName</i> n'a <20>t<EFBFBD> sp<73>cifi<66> et l'entr<74>e standard est un p<>riph<70>rique terminal-like), 0 autrement.
</DD>
</DL>
</div><br>
<div><b>PROMPTS</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">Quand <b>tclsh</b> est appel<65> interactivement il attend normalement chaque commande avec &quot;<b>%</b>&quot; Vous pouvez changer le prompt en fixant les variables <b>tcl_prompt1</b> et <b>tcl_prompt2</b> Si la variable <b>tcl_prompt1</b> existe alors elle doit consister en un script Tcl pour produire un prompt;&nbsp; au lieu de produire un prompt <b>tclsh</b> evaluera le script dans <b>tcl_prompt1</b>. La variable <b>tcl_prompt2</b> est utilis<69>e d'une mani<6E>re analogue quand un saut de ligne est tap<61> mais que la commande courante n'est pas encore compl<70>te; si <b>tcl_prompt2</b> n'est pas fix<69> alors aucun prompt ne s'affiche pour les commandes incompl<70>tes </div>
<br>
<br><div ALIGN="CENTER"><A HREF="index.htm"><b>Index</b></A>&nbsp;&nbsp;<A HREF="167.htm"><b>Pr<EFBFBD>c<EFBFBD>dent</b></A>&nbsp;&nbsp;<A HREF="169.htm"><b>Suivant</b></A></div>
</BODY></HTML>