Registrierung
leer
leer
newposts
Users
search
FAQ
Login
Start

Hallo Gast, und Willkommen im Forum. Sie müssen sich einloggen oder registrieren, um alle Funktionen nutzen zu können.


PN's Forum \ Computer \ Software \ Betriebssysteme \ Linux \ zwei Befehle zeitgleich ausführen und deren Ergebnis in Variablen weiterverarbeiten


 Poison Nuke  *

#1 Verfasst am 22.06.2012, um 14:23:19



Wer vor dem Problem steht, dass er zwei Befehle zeitgleich ausführen muss und deren Ergebnis dann auch noch in je einer eigenen Variable stehen haben will, wird mit einem


Quellcode
var1=`Befehl1` & var2=`Befehl2`; echo $var1" - "$var2


scheitern. var1 wird es nämlich nicht geben.

Dies liegt daran, dass durch den & Operator der erste Befehl der Befehlskette in einen eigenen Prozess geforked wird und damit auch einen eigenen Speicherbereich bekommt.
Da es in Linux nicht möglich ist, das ein Kindprozess seinem Elternprozess etwas zurückgibt, hat man auch keine Möglichkeit, eine Variable auf diese Weise zu verarbeiten.


Die einzige Lösung ist, man speichert die Variable temporär in einer Datei und ließt sie danach aus:


Quellcode
Befehl1 > /tmp/tempfile & var2=`Befehl2`; var1=`cat /tmp/tempfile`; echo $var1" - "$var2





greetz
Poison Nuke

PN's Forum \ Computer \ Software \ Betriebssysteme \ Linux \ zwei Befehle zeitgleich ausführen und deren Ergebnis in Variablen weiterverarbeiten


- Zurück zur Homepage - Eigene Beiträge - Neue Beiträge - Wer ist online? - Impressum - Datenschutz - Statistiken -



Board coded and provided by: Poison Nuke
Copyright 2007-2014, Robert Menger