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

Re: fighting :(){ :|:&};:



Philipp Meier <meier@fnogol.de> writes:
> Könnte mir ein wissender mal :(){ :|:&};: erklärbar zerpflücken, mein
> persönlicher Parser ist da überlastet ;-)

Der Doppelpunkt ist der Name einer Shell-Funktion. Ersetzt man ihn z.B.
durch "func" und fügt ein paar Leerzeichen ein, steht da

    func() { func | func & } ; func

oder nach Umbruch auf mehrere Zeilen

    func()
    {
       func | func &
    }
    func

Definiert wird also eine Shell-Funktion, die sich rekursiv zweimal durch
Pipe (|) verknüpft selbst aufruft und die Pipekette aus zwei Prozessen
in den Hintergrund schickt (&). Dann wird diese Funktion aufgerufen.

Martin


-- 
   ,--.                                          ,= ,-_-. =.
  / ,- )    Martin Dickopp, Dresden, Germany    ((_/)o o(\_))
  \ `-'        http://www.zero-based.org/        `-'(. .)`-'
   `-.                                               \_/



Reply to: