Re: Shell-Programmierung

From: Joerg Over <over(at)dexia.de>
Date: Wed, 23 Apr 2003 19:48:08 +0200

Am 18:15 23.04.2003 +0200 teilte Oliver Fromme mir folgendes mit:
-> > möglicherweise überhaupt keinen output, oder sein output
könnte
-> > sogar bereits umgeleitet sein...
->
->Nein, das kann nicht sein, sonst würde es ja keinen Sinn
->ergeben, seine Ausgabe in Kommando2 pipen zu wollen.

Dit stümmt wohl, Denkfehler :)

->Ehm, nein, wieso sollte das dort wahrscheinlicher sein?
->Das Environment sollte exakt das gleiche sein. Es gibt
->keinen Grund, für die Pipe eine xplizite Subshell aufzu-
->machen.

Hm...

>sh -c '( barney=fred; ) && ( echo $barney; )'

>

>sh -c '{ barney=fred; } && { echo $barney; }'
fred
>

Ist, wenn das Environment von kommando1 geändert wird, *nicht*
das gleiche, genau wie ich sagte. QED. Also m.E. nach wie vor ein
guter Grund.
(sh -c nur weil es 1. um sh ging und ich 2. nicht unsetten
wollte. Bevor da Optimierungen kommen, die sicher möglich sind.)

-> > wie möglicherweise die nur einmalige Ausführung von
kommando1
-> > effizienter ist trotz des PlattenIO durch die temporäre
Datei...
->
->Die temporäre Datei erzeugt vermutlich keinen Platten-I/O,
->es sei denn, Kommando1 erzeugt sehr viel Ausgabe, oder es
->läuft sehr lange, was wiederum ein Grund dafür wäre, es
->nur einmal laufen zu lassen.

Wie gesagt, nach wie vor zu wenig Info über kommando1 um diese
Aussage zu treffen. Ich sage nicht, dass meine Lösung besser ist,
ich sage dass ich nicht genug Info habe um zu entscheiden, welche
besser ist. Dass ich und auch kein anderer (ausser u.U. Peter
Ross) diese Info hat, ist nach wie vor mein Standpunkt. Auch
nicht genug Info, um meine Lösung von vornherein auszuschliessen.
Die Schwächen meiner Lösung habe ich benannt. Ich habe die
anderen Lösungen explizit als möglicherweise besser benannt.

Wenigstens mit all dem drumrum muss ich doch die Lösung
unbemäkelt anbieten können? OK die Umleitung nach /dev/null, aber
man kann ja davon ausgehen dass seine shellkünste das hergben,
oder?
Was soll ich noch tun? :)

-> > Ist nicht so dass ich nicht drüber nachgedacht hätte :)
->
->Das habe ich auch nicht unterstellt. :-)

Mein Gott, ich tu's immer noch! Aber jetzt hör' ich auf.
Versprochen. ;)

Grüsse, jo

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Wed 23 Apr 2003 - 19:48:12 CEST

search this site