Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
* Terminačné signály: Tieto signály sa odosielajú do procesu na jeho ukončenie, napríklad „sigint“ (prerušenie) alebo `Sigterm` (ukončenie).
* Chybové signály: Tieto signály sa odosielajú do procesu na označenie chyby, napríklad „Sigsegv` (porušenie segmentácie).
* Ostatné signály: Existujú rôzne ďalšie signály, ako napríklad `Sigusr1` a` Sigusr2`, ktoré sa dajú použiť na vlastné účely.
Ako `pasce` funguje
Príkaz „Trap` vám umožňuje určiť, aké akcie by sa mali podniknúť, keď je konkrétny signál prijatý procesom. Má nasledujúcu syntax:
`` `Bash
Signál „príkaz“
`` `
* `príkaz` :Toto je príkaz alebo sekvencia príkazov, ktoré sa vykonajú po prijatí zadaného signálu.
* `Signal` :Toto je číslo signálu alebo meno, ktoré chcete zachytiť.
príklady
1. Manipulácia `Sigint` (prerušenie):
`` `Bash
pasce 'echo „prerušené! Vyjdite ...“; exit 'int
`` `
Týmto vytlačí správu „prerušená! Exiting ...“ a potom opustí skript, keď sa stlačí `Ctrl+C` (ktorý odosiela signál„ Sigint`).
2. Ignorovanie `Sigquit` (Quit):
`` `Bash
PACK '' Prestaň
`` `
Tým sa ignoruje signál „Sigquit` (zvyčajne odoslaný pomocou` Ctrl+\ `) a zabráni mu v ukončení skriptu.
3. Spustenie čistiaceho skriptu:
`` `Bash
Opap 'cleanup.sh' výjazd
`` `
Tým sa vykoná skript „Cleanup.sh`, keď proces opustí, bez ohľadu na dôvod ukončenia.
Dôležité poznámky:
* Príkaz `pasce" ovplyvňuje iba aktuálny proces shellu.
* Ak chcete zvládnuť signály v detskom procese, musíte v tomto detskom procese použiť „pasca“.
* Na zoznam všetkých dostupných signálov môžete použiť možnosť `-l` s` Trap`.
V súhrne poskytuje `Trap` silný mechanizmus na manipuláciu so signálmi a riadenie správania vašich skriptov Unix v reakcii na rôzne udalosti.