Re: sed und regex

From: Bernd Walter <ticso(at)cicely12.cicely.de>
Date: Wed, 7 Jan 2004 06:01:36 +0100

On Wed, Jan 07, 2004 at 05:24:57AM +0100, Robert Barten wrote:
> On Wed, Jan 07, 2004 at 04:05:04AM +0100, Simon 'corecode' Schubert wrote:
> > >>das ist ja auch klar: die Shell macht die Umleitung auf `bar', und
> > >>zwar *bevor* sie cat ausfuehrt. Da ist dann die Datei schon
> > >>ueberschrieben.
>
> Das ist mir nicht klar. Die Ausgabe von cat wird durch die Pipe an sed
> übergeben. Je nach Komplexität braucht sed länger als das Pipen, bei mir
> in unserem Beispiel stets 99,5%. Ich habe keinen Unterschied zwischen
> CPU-Leistungen (3 versch.) festgestellt, die Proportionen cat/sed
> scheinen in diesem Beispiel wohl fast gleich zu sein. Gib cat etwas mehr
> zu tun (s/spam/spamassassin/), und Du kommst an die 100% ran. Wie auch
> immer, die Ausgabe von cat ist komplett an sed übergeben worden, nichts
> spricht dagegen, dass sed nun die Quelle überschreibt*.

Doch - die Pipe als solches ist nichts weiter als eine Durchreiche mit
einem Puffer.
Die Puffergröße ist je nach OS und Version unterschiedlich.
Sobald du mehr Daten veschickst, als reinpasst wird gleichzeitig
gelesen und geschrieben.
Außerdem hast du absolut keine Garantie darüber ob zuerst gelesen oder
zuerst die Ausgabedatei geleert wird - eigendlich soll es ja gleich-
zeitig passieren, was die Frage nach der Reihenfolge eh verbietet.
Spätestens bei einem SMP System wirst du diese Gleichzeitigkeit auch
erleben können - laut Murphy wird es aber wenigstens lange genug
gutgehen, bis wichtige Daten betroffen sind.

-- 
B.Walter                   BWCT                http://www.bwct.de
ticso(at)bwct.de                                  info(at)bwct.de
To Unsubscribe: send mail to majordomo.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Wed 07 Jan 2004 - 06:04:30 CET

search this site