Deutsch   English   Français   Italiano  
<t13t8j$gl4q$1@news.trigofacile.com>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.mixmin.net!weretis.net!feeder8.news.weretis.net!news.trigofacile.com!.POSTED.san13-h02-176-143-2-105.dsl.sta.abo.bbox.fr!not-for-mail
From: =?UTF-8?Q?Julien_=c3=89LIE?= <iulius@nom-de-mon-site.com.invalid>
Newsgroups: fr.comp.usenet.serveurs
Subject: Re: Extension au protocole NNTP
Date: Sat, 19 Mar 2022 07:29:39 +0100
Organization: Groupes francophones par TrigoFACILE
Message-ID: <t13t8j$gl4q$1@news.trigofacile.com>
References: <t0snkc$b58$1@shakotay.alphanet.ch>
 <t0upik$vpm$1@rasp.pasdenom.info> <t12k0p$flm4$1@news.trigofacile.com>
 <t12l29$318$1@shakotay.alphanet.ch> <t12nf9$fng5$1@news.trigofacile.com>
 <t12nve$eof$1@shakotay.alphanet.ch> <t12osv$foc4$1@news.trigofacile.com>
 <t12p5h$ka0$1@shakotay.alphanet.ch> <t138lh$cab$1@news.gegeweb.eu>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 19 Mar 2022 06:29:39 -0000 (UTC)
Injection-Info: news.trigofacile.com; posting-account="julien"; posting-host="san13-h02-176-143-2-105.dsl.sta.abo.bbox.fr:176.143.2.105";
	logging-data="545946"; mail-complaints-to="abuse@trigofacile.com"
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
 Gecko/20100101 Thunderbird/91.7.0
Cancel-Lock: sha1:ImHTcFjlkwEKNXpsbgzetEQbi7w= sha256:AeZyZRGyc9hnn7/99d0auY57jNdOfchwftmaS+ZR8Fk=
	sha1:3k9D+t3Vu1EgWeUMvRDcn0+knBc= sha256:iw7i3uUi8Faz7pq47JcYqcWqF4keEHDTMI/yUawtUu4=
In-Reply-To: <t138lh$cab$1@news.gegeweb.eu>
Bytes: 2844
Lines: 45

Bonjour Marc et tth,

>>> tu pourrais faire un "sed -i"
>>> ajoutant l'en-tête juste après la fin des en-têtes (ou à un autre lieu).
>>
>> Dans ce cas il y a un risque que celui qui a déjà ouvert le fichier
>> voie des choses bizarres se produire. C'est peu probable, mais c'est
>> possible.
>>
>> sed < 42 > 42.NEW
>>
>> # posix-atomic
>> mv -f 42.NEW 42
> 
>     Je confirme d'expérience : c'est LA façon de bien faire.

Heu... je ne parlais pas de "sed < 42 > 42.NEW" mais de "sed -i" 
("--in-place).

Je viens de regarder le code source de GNU sed lorsqu'il fait une 
édition "--in-place". Il réalise toutes les opérations dans un fichier 
temporaire puis :

   ck_rename (input->out_file_name, target_name, input->out_file_name);


void
ck_rename (const char *from, const char *to, const char *unlink_if_fail)
{
   int rd = rename(from, to);
   if (rd != -1)
     return;
   [...]
}


GNU sed utilise bien rename(2) qui est une opération atomique.

"mv" n'est pas LA façon de bien faire... Il existe de multiples autres 
façons...

-- 
Julien ÉLIE

« Pour aller plus vite, j'additionne toujours de bas en haut : je fais
   du même coup l'addition et la preuve. » (Aurélien Scholl)