Bash Pagina 102: Diferență între versiuni

De la Wiki Linux Advanced
Sari la navigare Sari la căutare
 
Fără descriere a modificării
Linia 1: Linia 1:
== Semnale, Capcane, Blocarea Fișierelor și Descriptori de Fișiere - prezentare generală ==
'''Semnale și Capcane'''
* Semnalele sunt notificări trimise către un proces pentru a indica anumite evenimente (ex. `SIGINT`, `SIGTERM`).
* Comanda `trap` poate fi utilizată pentru a captura semnalele și a defini acțiuni specifice, prevenind oprirea necontrolată a scriptului.
* Exemplu de utilizare:
<code>trap "echo 'Script oprit de utilizator'; exit" SIGINT</code>
Acest cod interceptează semnalul `SIGINT` (CTRL+C) și execută un mesaj înainte de încheierea scriptului.
'''Blocarea Fișierelor'''
* Blocarea fișierelor previne accesul simultan al mai multor procese la același fișier, evitând coruperea datelor.
* Se poate realiza blocarea exclusivă a fișierului folosind comanda `flock`, de exemplu:
<code>flock /tmp/lockfile -c "comanda_de_executat"</code>
În acest caz, `comanda_de_executat` va fi rulată doar dacă fișierul `/tmp/lockfile` nu este deja blocat.
'''Descriptori de Fișiere'''
* Descrierile de fișiere sunt valori numerice care identifică fișierele deschise de un proces.
* În shell, descriptorii de fișiere comuni sunt:
`0` — Stdin (Intrare standard)
`1` — Stdout (Ieșire standard)
`2` — Stderr (Eroare standard)
* Exemple de redirecționare:
<code>echo "Mesaj" > out.txt  # Redirecționează stdout în fișier</code>
<code>echo "Eroare" 2> error.txt  # Redirecționează stderr în fișier</code>
'''Rezumat:'''
* Semnalele și capcanele permit manipularea comportamentului la întreruperi.
* Blocarea fișierelor este esențială pentru gestionarea accesului concurent la resurse.
* Descrierile de fișiere sunt esențiale pentru redirecționarea ieșirilor și manipularea fluxurilor de date.
Aceste concepte avansate permit un control precis asupra execuției scripturilor și accesului la fișiere.





Versiunea de la data 28 octombrie 2024 21:28

Semnale, Capcane, Blocarea Fișierelor și Descriptori de Fișiere - prezentare generală

Semnale și Capcane

  • Semnalele sunt notificări trimise către un proces pentru a indica anumite evenimente (ex. `SIGINT`, `SIGTERM`).
  • Comanda `trap` poate fi utilizată pentru a captura semnalele și a defini acțiuni specifice, prevenind oprirea necontrolată a scriptului.
  • Exemplu de utilizare:

trap "echo 'Script oprit de utilizator'; exit" SIGINT Acest cod interceptează semnalul `SIGINT` (CTRL+C) și execută un mesaj înainte de încheierea scriptului.

Blocarea Fișierelor

  • Blocarea fișierelor previne accesul simultan al mai multor procese la același fișier, evitând coruperea datelor.
  • Se poate realiza blocarea exclusivă a fișierului folosind comanda `flock`, de exemplu:

flock /tmp/lockfile -c "comanda_de_executat" În acest caz, `comanda_de_executat` va fi rulată doar dacă fișierul `/tmp/lockfile` nu este deja blocat.

Descriptori de Fișiere

  • Descrierile de fișiere sunt valori numerice care identifică fișierele deschise de un proces.
  • În shell, descriptorii de fișiere comuni sunt:
`0` — Stdin (Intrare standard)
`1` — Stdout (Ieșire standard)
`2` — Stderr (Eroare standard)
  • Exemple de redirecționare:

echo "Mesaj" > out.txt # Redirecționează stdout în fișier echo "Eroare" 2> error.txt # Redirecționează stderr în fișier

Rezumat:

  • Semnalele și capcanele permit manipularea comportamentului la întreruperi.
  • Blocarea fișierelor este esențială pentru gestionarea accesului concurent la resurse.
  • Descrierile de fișiere sunt esențiale pentru redirecționarea ieșirilor și manipularea fluxurilor de date.

Aceste concepte avansate permit un control precis asupra execuției scripturilor și accesului la fișiere.




Pagina anterioară | Următoarea pagină