[linux-l] Re: Wie string abgreifen von: echo "string"|program;

Rocco Rutte pdmef at cs.tu-berlin.de
Di Nov 8 12:00:48 CET 2005


Hi,

* Philipp Grau [05-11-08 11:02:06 +0100] wrote:
>* Rocco Rutte <pdmef at cs.tu-berlin.de> [07.11.05 15:39]:

>> >echo "string"|program; 
>> >Wie kann ich "string" in einem Bash-, C- oder Perlprogramm in eine 
>> >Variable lesen?

>> $ echo "string" | cat - | tee /tmp/string ; cat /tmp/string
>> string
>> string

>Das ist ein cat zu viel, oder? Wo ist der Unterschied zu 

>echo "string" | tee /tmp/string ; cat /tmp/string  

Es wird kein Programm mehr ausgeführt? ;-) Oben ging es ja darum, den 
Input via Pipe zu verarbeiten, und 'cat -' war bei mir halt nur 
irgendetwas, dass Input via Pipe bearbeitet. Aber wenn man 'was anderes 
als cat nimmt, muss man die Reihenfolge ändern zu:

   $ echo "string" | tee /tmp/foo | program

>und wo ist das Bash-Script, das die Standard-Eingabe in einer Variablen hält? 

Das hatte ich als Übung gelassen, aber okay:

   #!/bin/sh
   TEMPFILE=`mktemp /tmp/foo.XXXXXX`
   echo "string" | tee $TEMPFILE | program
   STRING=`cat $TEMPFILE`
   echo "Input war wohl $TEMPFILE"
   rm -rf $TEMPFILE

   bye, Rocco
-- 
:wq!



Mehr Informationen über die Mailingliste linux-l