Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Čo znamená _(){ _&_;};  (Přečteno 1566 krát)

MicHo

  • Aktivní člen
  • *
  • Příspěvků: 111
    • http://www.tm-league.wz.cz/TML2/
Čo znamená _(){ _&_;};
« kdy: 03 Března 2008, 14:16:47 »
Ahoj,
nedávno som sa dostal k príkazu _(){ _&_;};
Zaujíma ma, čo presne znamená

PS: viem, že začne vytvárať (forkovať) procesy a za krátky čas zahltí procesor, ale zaujíma ma, čo presne znamená táto zvláštna syntax
so zátvorkami a podtržníkmi.. resp. existuje nejaký zdroj, kde by som sa mohol dostať k vysvetleniu?

Ďakujem ;)
Ubuntu 6.10, Gnome 2.16.1, Beryl 0.3.0...
Ak chcete vedieť, ako sa dá zo dňa na deň prejsť z XP na Linux, tak si pokecáme
 HOWTOs C++ Bash

donny

  • Závislák
  • ***
  • Příspěvků: 1861
Re: Čo znamená _(){ _&_;};
« Odpověď #1 kdy: 03 Března 2008, 14:29:24 »
Kód: [Vybrat]
_()
{
_&_;
};
já bych řekl, že to je rekurzivní funkce s názvem "_" a dělá to, že volá sama sebe dvakrát najednou (_&_).
archlinux @ i7-6700/GTX1080 8G/32G DDR4/.5TB NVMe/WD RED 3TB | Raspbian 8 @ Raspberry Pi
Ever tried. Ever failed. No matter. Try again. Fail again. Fail better!

kkaarreell

  • Stálý člen
  • **
  • Příspěvků: 1072
Re: Čo znamená _(){ _&_;};
« Odpověď #2 kdy: 03 Března 2008, 14:29:59 »
Ta cast "_(){ .....};" je definice funkce. V nasem pripade se tato funkce jmenuje "_" (podtrziko), takovy hodne strucny nazev. V tele teto funkce se tato funkce dvakrat rekurzivne vola (to jest spousti sebe sama), pricemz ta prvni je pomoci "&" spustena na pozadi.
Vysledny efekt uz jsi popsal.

aha, tak Michal uz byl rychlejsi.

MicHo

  • Aktivní člen
  • *
  • Příspěvků: 111
    • http://www.tm-league.wz.cz/TML2/
Re: Čo znamená _(){ _&_;};
« Odpověď #3 kdy: 03 Března 2008, 15:22:20 »
Obom vám veľmi pekne ďakujem :)
Zaujímavé, ako môže vyzerať bežná syntax
Ubuntu 6.10, Gnome 2.16.1, Beryl 0.3.0...
Ak chcete vedieť, ako sa dá zo dňa na deň prejsť z XP na Linux, tak si pokecáme
 HOWTOs C++ Bash

 

Provoz zaštiťuje spolek OpenAlt.