[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] Output eines Programms als Parameter an ein zweites übergeben



Michael Bramer <grisu@debian.org> schrieb:

> On Mon, Apr 22, 2002 at 10:20:17AM +0200, Frank Fürst wrote:
> > Marco Herrn <herrn@gmx.net> schrieb:
> > 
> > > > foo $(bar)
> > > 
> > > Danke, ja du hast mich richtig verstanden. Danach habe ich gesucht.
> > > Mit den Klammern habe ich es auch schon versucht, ich wusste allerdings
> > > nicht, dass ich das $-Zeichen davor setzen musste.
> > 
> > Du kannst auch 
> > 
> > foo `bar`
> 
> besser ist aber:
> 
> bar | xargs foo

Wobei das eben nur geht, wenn die Ausgabe von bar das letzte Argument
von foo sein soll. Und soweit ich sehe, ist es auch nur von Vorteil,
wenn bar eine ganze Liste auswirft.

> (du kannst ja gerne mal foo $(find /) ausprobieren...)

Bei foo $( lspci|grep VGA| \
   sed 's/\(.*:[[:blank:]]\)\(.*\)/Grafikarte: \2/')

(oder einer sinnhaften Variante von sowas) kann ich aber den Vorteil
nicht erkennen. 

Außerdem kann man command substitution für weitere Dinge verwenden, etwa

erromsg=`foo 2>&1` || dialog --msgbox\
         "Es ist ein unerwarteter Fehler aufgetreten" $errormsg

wenn man eigentlich nur foo ausführen will und gar nicht erwartet, dass
etwas schiefgeht.

Gruß, Frank
-- 
Frank Fürst, physikalische Biochemie, Universität Potsdam, Germany
Tel.: +49-331-977-5062		Fax: +49-331-977-5062


--
Zum AUSTRAGEN schicken Sie eine Mail an debian-user-german-request@lists.debian.org
mit dem Subject "unsubscribe". Probleme? Mail an listmaster@lists.debian.org (engl)



Reply to: