Le 12566ième jour après Epoch,
[EMAIL PROTECTED] écrivait:

> Jacques L'helgoualc'h wrote:
>
>> ascii a écrit, vendredi 28 mai 2004, à 15:29 :
>> [...]
>>
>>>ceci ma l'air d'être correct
>>>
>>>#!/bin/sh
>>>CONF='/etc/vsftpd.conf'
>>>IP=`lynx -dump checkip.dyndns.org | grep IP | awk '{print $4}'`
>> # grep | awk = awk
>>  awk '/IP/{print $4}'
>>
>>>cat $CONF | sed -e"s/pasv_address=.*/pasv_address=$IP/" > $CONF
>> Là, c'est  plus grave,  quand le  shell ouvre $CONF  en écriture,
>> il en
>> efface le contenu...
>>
> 
> non. j'ouvre pas le fichier avec sed mais j'envoi le contenu dans
> sed.

C'est pas ce qu'il a dit. Il parlait du shell et de la redirection.

> le cat est effectué avant que le $CONF soit ouvert en écriture.

Il n'y a pas de règles de priorité sur les pipes. Rien ne garanti que
le cat sera fait avant le sed.

Dans la commande "ps waux|grep inetd", il est fréquent de voir la
ligne du process grep en même temps que celle du process inetd.

Ce qui te sauves dans ce cas là, c'est la rapidité du cat et la petite
taille du fichier.

PS: On peut remplacer avantageusement "cat xxx|yyy" par "yyy < xxx"
... sauf dans ton cas ;)

-- 
The default Magic Word, "Abracadabra", actually is a corruption of the
Hebrew phrase "ha-Bracha dab'ra" which means "pronounce the blessing".

Répondre à