projman/hlp/fr/tcl/file.htm

113 lines
16 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>file&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Commandes Internes Tcl</b></H3></div>
<HR ALIGN="center">
<div><b>NOM</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">file - Manipule les noms et les attributs de fichier
</div><br>
<div><b>SYNTHESE</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><b>file </b><i>option</i> <i>name</i> ?<i>arg arg ...</i>?
</div><br>
<div><b>DESCRIPTION</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">Cette commande fournit plusieurs op<6F>rations sur un nom ou des attributs de fichier. <i>Name</i> est le nom d'un fichier; s'il commence avec un tilde, alors la substitution tilde est faite avant l'ex<65>cution de la commande (voyez la page de manuel de <A HREF="113.htm"><b>filename</b></A> pour les d<>tails). <i>Option</i> indique que faire avec le nom de fichier. N'importe quelle abr<62>viation unique pour <i>option</i> est acceptable. Les options valides sont:
<DL>
<DT><b>file atime </b><i>name</i> ?<b>time</b>?</DT><DD>Renvoie une cha<68>ne d<>cimale donnant la date du dernier acc<63>s au fichier <i>name</i>. Si <i>time</i> est sp<73>cifi<66>, c'est pour fixer la date d'acc<63>s au fichier. Le temps est mesur<75> de la fa<66>on POSIX standard comme nombre de secondes depuis une date fixe (souvent January 1, 1970). Si le fichier n'existe pas ou que sa date d'acc<63>s ne peut <20>tre trouv<75>e ou fix<69>e alors une erreur est g<>n<EFBFBD>r<EFBFBD>e. Sous Windows, le syst<73>me de fichiers FAT ne supporte pas la date d'acc<63>s (POSIX).
<br></DD>
<DT><br><b>file attributes </b><i>name</i></DT><DD></DD>
<DT><b>file attributes</b><i>name</i> ?<A HREF="296.htm"><b>option</b></A>?
</DT><DD></DD>
<DT><b>file attributes</b><i>name</i> ?<b>option value option value...</b>?
</DT><DD>Cette sous commande retourne ou fixe les valeurs sp<73>cifiques <20> la plateforme associ<63>es <20> un fichier. La premi<6D>re forme retourne une liste de flags sp<73>cifiques <20> la plateforme et leurs valeurs. La seconde forme retourne la valeur de l'option sp<73>cifique. Le troisi<73>me forme fixe une ou plusieurs des valeurs. La valeurs sont les suivantes:
Sous Unix, <b>-group</b> lit ou fixe le nom de groupe pour le fichier. Un group id peut <20>tre donn<6E> <20> la commande, mais elle retourne un nom de groupe. <b>-owner</b> gets ou fixe le nom de l'utilisateur propri<72>taire du fichier. La commande retourne le nom du propri<72>taire, mais l'id num<75>rique peut <20>tre transmise quand on fixe le propri<72>taire. <b>-permissions</b> fixe ou lit le code octal que chmod(1) utilise. Cette commande a aussi un support limit<69> pour fixer en utilisant les attributs symboliques pour chmod(1), de la forme &#91;ugo]?&#91;&#91;+-=]&#91;rwxst],&#91;...]], ou les attributs symboliques multiples peuvent <20>tre s<>par<61>s par des virgules (exemple: <b>u+s,go-rw</b> ajoute sticky bit pour l'utilisateur, et enl<6E>ve les permissions lecture et <20>criture pour le groupe et le reste du monde). Un style cha<68>ne simplifi<66> <b>ls</b>, de la forme rwxrwxrwx (doit <20>tre 9 caract<63>res), est aussi support<72> (exemple: <b>rwxr-xr-t</b> est <20>quivalent <20> 01755).
Sous Windows, <b>-archive</b> donne la valeur ou bien fixe ou efface l'attribut archive du fichier. <b>-hidden</b> donne la valeur ou bien fixe ou efface l'attribut cach<63> du fichier. <b>-longname</b> expanse chaque <20>l<EFBFBD>ment de chemin en sa version longue. Cet attribut ne peut pas <20>tre fix<69>. <b>-readonly</b> donne la valeur ou bien fixe ou efface l'attribut lecture seule du fichier. <b>-shortname</b> donne une cha<68>ne ou tout <20>l<EFBFBD>ment de chemin est remplac<61> avec sa version courte (8.3). Cet attribut ne peut pas <20>tre fix<69>. <b>-system</b> donne ou bien fixe ou efface la valeur de l'attribut syst<73>me du fichier.
Sous Macintosh, <b>-creator</b> donne ou fixe le type Finder createur du fichier. <b>-hidden</b> donne ou bien fixe ou efface l'attribut cach<63> du fichier. <b>-readonly</b> donne ou bien fixe ou efface l'attribut lecture seule du fichier. Notez que les r<>pertoires peuvent seulement <20>tre v<>rouill<6C>s si File Sharing est activ<69>. <b>-type</b> donne ou fixe le type Finder du fichier.
</DD>
<DT><br><b>file channels ?</b><i>pattern</i>?</DT><DD>Si <i>pattern</i> n'est pas sp<73>cifi<66>, retourne une liste de noms de tous les canaux declar<61>s ouverts dans cet interpr<70>teur. Si <i>pattern</i> est sp<73>cifi<66>, seulement les noms correspondants <20> <i>pattern</i> sont renvoy<6F>s. La correspondance est d<>termin<69>e en utilisant les m<>mes r<>gles que pour <b>string match</b>. </DD>
<DT><br><b>file copy </b>?<b>-force</b>? ?<b>--</b>? <i>source</i> <i>target</i>
</DT><DD></DD>
<DT><b>file copy</b>?<b>-force</b>? ?<b>--</b>? <i>source</i> ?<i>source</i> ...? <i>targetDir</i>
</DT><DD></DD>
<DT></DT><DD>La premi<6D>re forme fait une copie du fichier ou r<>pertoire <i>source</i> sous le nom de chemin <i>target</i>. Si <i>target</i> est un r<>pertoire existant, alors la seconde forme est utilis<69>e. La seconde forme fait une copie dans <i>targetDir</i> de chaque fichier <i>source</i> list<73>. Si un r<>pertoire est sp<73>cifi<66> comme <i>source</i>, alors le contenu du r<>pertoire sera r<>cursivement copi<70> dans <i>targetDir</i>. Les fichiers existants ne seront pas <20>cras<61>s <20> moins que l'option <b>-force</b> soit sp<73>cifi<66>e. Essayer d'<27>craser un r<>pertoire non-vide, <20>craser un r<>pertoire avec un fichier, ou un fichier avec un r<>pertoire donnera des erreurs m<>me si <i>-force</i> a <20>t<EFBFBD> sp<73>cifi<66>. Les arguments sont trait<69>s dans l'ordre sp<73>cifi<66>, s'arr<72>tant <20> la premi<6D>re erreur, si elle existe. Un <b>--</b> marque la fin des commutateurs; l'argument suivant le <b>--</b> sera trait<69> comme un <i>source</i> m<>me s'il commence avec un <b>-</b>.
</DD>
<DT><br><b>file delete </b>?<b>-force</b>? ?<b>--</b>? <i>pathname</i> ?<i>pathname</i> ... ?
</DT><DD>Efface le fichier ou r<>pertoire sp<73>cifi<66> par chaque argument<i> pathname</i>. Les r<>pertoires non-vide seront enlev<65>s seulement si l'option <b>-force</b> est sp<73>cifi<66>e. Essayer d'effacer un fichier non-existant n'est pas consider<65> comme une erreur. Essayer d'effacer un fichier lecture-seule provoquera l'effacement du fichier, m<>me si le <b>-force</b> flags n'est pas sp<73>cifi<66>. Les arguments sont trait<69> dans l'ordre sp<73>cifi<66>, s'arr<72>tant <20> la premi<6D>re erreur, si elle existe. Un <b>--</b> marque la fin des commutateurs; l'argument suivant le <b>--</b> sera trait<69> comme un <i>pathname</i> m<>me s'il commence avec un <b>-</b>.
</DD>
<DT><b><br>file dirname </b><i>name</i></DT><DD>Renvoie un nom comportant tout les composants de chemin de <i>name</i> excluant le dernier <20>l<EFBFBD>ment. Si <i>name</i> est un nom de fichier relatif et contient seulement un <20>l<EFBFBD>ment de chemin, alors retourne &quot;<b>.</b>&quot; (ou &quot;<b>:</b>&quot; sur le Macintosh). Si <i>name</i> se ref<65>re <20> un r<>pertoire racine, alors le r<>pertoire racine est renvoy<6F>. Par exemple,
<b>file dirname c:/</b>
retourne <b>c:/</b>.
Notez que la substitution tilde sera effectu<74>e seulement si c'est n<>cessaire pour que la commande aboutisse. Par exemple,
<b>file dirname ~/src/foo.c</b>
retourne <b>~/src</b>, alors que
<b>file dirname ~</b>
retourne <b>/home</b> (ou quelque chose de similaire).
</DD>
<DT><br><b>file ex<65>cutable </b><i>name</i></DT><DD>Renvoie <b>1</b> si le fichier <i>name</i> est ex<65>cutable par l'utilisateur courant, <b>0</b> autrement.
</DD>
<DT><br><b>file exists </b><i>name</i></DT><DD>Renvoie <b>1</b> si fichier <i>name</i> existe et que l'utilisateur courant a les privileges de recherche pour les r<>pertoires y menant, <b>0</b> autrement.
</DD>
<DT><br><b>file extension </b><i>name</i></DT><DD>Renvoie tous caract<63>res de <i>name</i> apr<70>s et incluant le dernier point dans le dernier <20>l<EFBFBD>ment de <i>name</i>. S'il n'y a pas point dans le dernier <20>l<EFBFBD>ment de <i>name</i> alors retourne la cha<68>ne vide.
</DD>
<DT><br><b>file isdirectory </b><i>name</i></DT><DD>Renvoie <b>1</b> si le fichier <i>name</i> est un r<>pertoire, <b>0</b> autrement.
<br></DD>
<DT><b>file isfile </b><i>name</i></DT><DD>Renvoie <b>1</b> si le fichier <i>name</i> est un fichier ordinaire, <b>0</b> autrement.
</DD>
<DT><br><b>file join </b><i>name</i> ?<i>name ...</i>?</DT><DD>Prend un ou plusieurs noms de fichiers et les combine, en utilisant le s<>parateur de chemin correct pour la plateforme courante. Si un <i>name</i> particulier est relatif, alors il sera joint au pr<70>cedent argument nom de fichier. Autrement, tout argument prec<65>dent sera <20>cart<72>, et la jointiure commencera <20> l'argument courant. Par exemple,
<b>file join a b /foo bar</b>
retourne <b>/foo/bar</b>.
Notez que n'importe quel des noms peut contenir des s<>parateurs, et que le r<>sultat est toujours canonique pour la plateforme courante : <b>/</b> pour Unix et Windows, et <b>:</b> pour Macintosh.
</DD>
<DT><br><b>file lstat </b><i>name varName</i></DT><DD>Identique <20> l'option <b>stat</b> (voir ci-dessous) except<70> qu'elle utilise l' appel kernel <i>lstat</i> au lieu de <i>stat</i>. Ceci signifie que si <i>name</i> se ref<65>re <20> un lien symbolique l'information renvoy<6F>e dans <i>varName</i> concerne le lien plut<75>t que le fichier auquel il se ref<65>re. Sur les syst<73>mes qui ne supportent pas les lien symboliques cette option se comporte exactement comme l'option<b> stat</b>.
</DD>
<DT><br><b>file mkdir </b><i>dir</i> ?<i>dir</i> ...?</DT><DD><b>file mkdir </b><i>dir</i> ?<i>dir</i> ...?</DD>
<DT><b>file mkdir </b><i>dir</i> ?<i>dir</i> ...?</DT><DD></DD>
<DT><b>file mtime </b><i>name</i> ?<i>time</i>?</DT><DD>Renvoie une cha<68>ne d<>cimale donnant le temps auquel fichier <i>name</i> a <20>t<EFBFBD> modifi<66> pour la derni<6E>re fois. Si <i>time</i> est sp<73>cifi<66>, c'est une pour fixer le temps pour le fichier (<28>quivalent <20> <b>touch</b> sous Unix). Le temps est mesur<75> de la fa<66>on standard POSIX en tant que secondes depuis une date fixe (souvent 1 Janvier 1970). Si le fichier n'existe pas ou la date de modification ne peut <20>tre trouv<75>e ou r<>gl<67>e, une erreur est g<>n<EFBFBD>r<EFBFBD>e.
</DD>
<DT><br><b>file nativename </b><i>name</i></DT><DD>Renvoie le nom du fichier sp<73>cique <20> la plate-forme. Ceci est utile si le nom de fichier est n<>cessaire <20> transmettre <20> un appel sp<73>cique <20> la plate-forme, tel que exec sous Windows ou AppleScript sur Macintosh.
<b>file owned </b><i>name</i>
Renvoie <b>1</b> si fichier <i>name</i> appartient <20> l'utilisateur courant, <b>0</b> autrement.
</DD>
<DT><br><b>file pathtype </b><i>name</i><br></DT><DD>Renvoie un de <b>absolute</b>, <b>relative</b>, ou <b>volumerelative</b>. Si <i>name</i> se ref<65>re <20> un fichier sp<73>cifique sur un volume sp<73>cifique , le chemin type sera <b>absolute</b>. Si <i>name</i> se ref<65>re <20> un fichier relatif au r<>pertoire de travail courant, alors le type du chemin sera <b>relative</b>. Si <i>name</i> se ref<65>re <20> un fichier relatif au r<>pertoire de travail courant sur un volume sp<73>cifi<66>, ou <20> un fichier sp<73>cifique sur le volume de travail courant, alors le type fichier est <b>volumerelative</b>.
</DD>
<DT><br><b>file readable </b><i>name</i></DT><DD>Renvoie <b>1</b> si le fichier <i>name</i> est lisible par l'utilisateur courant, <b>0</b> autrement.
</DD>
<DT><b>file readlink </b><i>name</i></DT><DD>Renvoie la valeur du lien symbolique d<>sign<67> par <i>name</i> (ex. le nom du fichier vers lequel il pointe). Si <i>name</i> n'est pas un lien symbolique ou que sa valeur ne peut pas <20>tre lue, alors une erreur est g<>n<EFBFBD>r<EFBFBD>e. Sur les syst<73>mes qui ne supportent pas les liens symboliques cette option est ind<6E>finie.
</DD>
<DT><br><b>file rename</b>?<b>-force</b>? ?<b>--</b>? <i>source</i> <i>target</i>
</DT><DD></DD>
<DT><b>file rename</b>?<b>-force</b>? ?<b>--</b>? <i>source</i> ?<i>source</i> ...? <i>targetDir</i>
</DT><DD>La premi<6D>re forme prend le fichier ou le r<>pertoire sp<73>cifi<66> par le nom de chemin <i>source</i> et le renomme en <i>target</i>, en d<>placant le fichier si le nom de chemin <i>target</i> sp<73>cifie un nom dans un r<>pertoire diff<66>rent. Si <i>target</i> est un r<>pertoire existant, alors la seconde forme est utilis<69>e. La seconde forme d<>place chaque fichier ou r<>pertoire <i>source</i> dans le r<>pertoire <i>targetDir</i>. Les fichiers existants ne seront pas ecras<61>s <20> moins que l'option <b>-force</b> soit sp<73>cifi<66>e. Essayer d'<27>craser un r<>pertoire non-vide, <20>craser un r<>pertoire avec un fichier, ou un fichier avec un r<>pertoire generera des erreurs. Les arguments sont trait<69>s dans l'ordre sp<73>cifi<66>, s'arr<72>tant <20> la premi<6D>re erreur, si elle existe. Un <b>--</b> marque la fin des commutateurs; l'argument suivant le <b>--</b> sera trait<69> comme une <i>source</i> m<>me s'il commence avec un <b>-</b>.
</DD>
<DT><br><b>file rootname </b><i>name</i></DT><DD>Renvoie tous les caract<63>res dans <i>name</i> jusqu'a mais non inclus le dernier caract<63>re &quot;.&quot; dans le dernier composant du nom. Si le dernier composant de <i>name</i> ne contient pas de point, alors retourne <i>name</i>.
</DD>
<DT><br><b>file size </b><i>name</i></DT><DD>Renvoie une cha<68>ne d<>cimale donnant la taille du fichier <i>name</i> en octets. Si le fichier n'existe pas ou si sa taille ne peut pas <20>tre obtenue alors une erreur est g<>n<EFBFBD>r<EFBFBD>e.
</DD>
<DT><br><b>file split </b><i>name</i></DT><DD>Renvoie une liste dont les <20>l<EFBFBD>ments sont les composants de chemin in <i>name</i>. Le premier <20>l<EFBFBD>ment de la liste aura le m<>me type chemin que <i>name</i>. Tous les autres <20>l<EFBFBD>ments seront relatifs. Les s<>parateurs de chemin seront <20>cart<72>s <20> moins que ils soit n<>cessaires pour s'assurer qu'un <20>l<EFBFBD>ment est relatif sans ambiguit<69>. Par exemple, sous Unix
<b>file split /foo/~bar/baz</b>
retourne <b>/ foo ./~bar baz</b> pour s'assurer que les commandes suivantes qui utiliseront le troisi<73>me composant ne tentent pas d'effectuer une substitution de tilde.
</DD>
<DT><br><b>file stat </b><i>name varName</i></DT><DD>D<EFBFBD>clenche l'appel kernel <b>stat</b> sur <i>name</i>, et utilise la variable d<>sign<67>e par <i>varName</i> pour recevoir information renvoy<6F>e par l'appel kernel. <i>VarName</i> est trait<69> comme une variable tableau, et les <20>l<EFBFBD>ments suivants de cette variable sont fixes: <b>atime</b>, <b>ctime</b>, <b>dev</b>, <b>gid</b>, <b>ino</b>, <b>mode</b>, <b>mtime</b>, <b>nlink</b>, <b>size</b>, <b>type</b>, <b>uid</b>. Chaque <20>l<EFBFBD>ment except<70> <b>type</b> est une cha<68>ne d<>cimale avec la valeur du champ correspondant de la <b>stat</b> structure de retour; voyez la page de manuel de <b>stat</b> pour des d<>tails sur le sens des valeurs. L'<27>l<EFBFBD>ment <b>type</b> donne le type du fichier sous la m<>me forme que celle renvoy<6F>e par la commande <b>file type</b>. Cette commande retourne une cha<68>ne vide.
</DD>
<DT><br><b>file tail </b><i>name</i></DT><DD>Renvoie tous les caract<63>res dans <i>name</i> apr<70>s le dernier s<>parateur de r<>pertoire. Si <i>name</i> ne contient pas de s<>parateurs alors retourne <i>name</i>.
</DD>
<DT><br><b>file type </b><i>name</i></DT><DD>Renvoie une cha<68>ne donnant le type de fichier <i>name</i>, qui sera l'un de <b>file</b>, <b>directory</b>, <b>characterSpecial</b>, <b>blockSpecial</b>, <b>fifo</b>, <b>link</b>, ou <A HREF="162.htm"><b>socket</b></A>.
</DD>
<DT><br><b>file volume</b><br></DT><DD>Renvoie le chemin absolu des volumes <i>mont<EFBFBD>s</i> sur le syst<73>me, comme liste Tcl correcte. Sur Macintosh, ce sera une liste des lecteurs <i>mont<EFBFBD>s</i>, locaux ou r<>seaux. N.B. si deux lecteurs ont le m<>me nom, ils apparairont tous deux sur la liste de volumes, mais il n'y a pas de fa<66>on, avec Tcl, d'acceder <20> un autre que le premier de ces lecteurs. Sous UNIX, la commande retournera toujours &quot;/&quot;, car tous les syst<73>mes de fichier sont <i>mont<EFBFBD>s</i> localement. Sous Windows, elle renverra une liste des lecteurs locaux disponibles (ex. &#123;a:/ c:/}).
</DD>
<DT><br><b>file writable </b><i>name</i></DT><DD>Renvoie <b>1</b> si le fichier <i>name</i> est inscriptible par l'utilisateur courant , <b>0</b> autrement.
</DD>
</DL>
</div><br>
<div><b>PROBLEMES DE PORTABILITE</b></div><br>
<div ALIGN="LEFT" style="margin-left: 102px;"><b>Unix</b> <br>
Cette commande op<6F>re toujours en utilisant les identificateurs r<>els d'utilisateur et de groupe, et non les identificateurs effectifs.
</div><br>
<div><b>VOIR EGALEMENT</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51 px;"><A HREF="113.htm">filename</A> </div><br>
<div>Derni<EFBFBD>re r<>vision: 8.3</div>
<br>
<br><div ALIGN="CENTER"><A HREF="index.htm"><b>Index</b></A>&nbsp;&nbsp;<A HREF="110.htm"><b>Pr<EFBFBD>c<EFBFBD>dent</b></A>&nbsp;&nbsp;<A HREF="112.htm"><b>Suivant</b></A>
</div>
</BODY></HTML>