Bash Pagina 36: Diferență între versiuni

De la Wiki Linux Advanced
Sari la navigare Sari la căutare
Linia 11: Linia 11:
Aceasta va elimina toate erorile generate de comanda ''cmd''.
Aceasta va elimina toate erorile generate de comanda ''cmd''.


Redirecționare către un Flux Specific<br>
2. ''Redirecționare către un Flux Specific''


Pentru a redirecționa ieșirea unei comenzi către un flux specific, utilizați >&N. <br>
Pentru a redirecționa ieșirea unei comenzi către un flux specific, utilizați >&N. <br>

Versiunea de la data 27 octombrie 2024 10:09

Redirecționare (2)

Redirecționarea fluxurilor în shell scripting permite controlul detaliat asupra modului în care sunt gestionate intrările, ieșirile și erorile. Aceasta este esențială pentru a îmbunătăți gestionarea erorilor și pentru a organiza rezultatele.

Tipuri de Redirecționare a Fluxurilor

1. Redirecționare a Fluxului Specific

Puteți redirecționa un anumit flux utilizând sintaxa N>. Exemplu:

cmd 2>/dev/null

Aceasta va elimina toate erorile generate de comanda cmd.

2. Redirecționare către un Flux Specific

Pentru a redirecționa ieșirea unei comenzi către un flux specific, utilizați >&N.
Exemple:

1>&2: trimite ieșirea standard (stdout) către fluxul de eroare standard (stderr).
2>&1: redirecționează fluxul de eroare standard (stderr) către ieșirea standard (stdout).

Trimiterea Ieșirii și a Erorilor într-un Singur Fișier

Pentru a trimite atât ieșirea standard, cât și erorile într-un singur fișier de jurnal, utilizați:

cmd > fișierul_jurnal 2>&1

Important: Nu faceți acest lucru:

cmd > jurnal 2> jurnal

Aceasta va crea un fișier de jurnal care poate fi incomplet sau care nu va conține toate informațiile dorite.

Reguli și Conținut

Evitați să folosiți &> sau >&.

Ordinea redirecționărilor contează.

Exemple corecte:

cmd < fișier_de_intrare > fișier_de_ieșire

și

> fișier_de_ieșire cmd < fișier_de_intrare

Un exemplu de redirecționare a erorilor către fișierul de jurnal:

cmd > fișierul_de_jurnal 2>&1

În mod similar, pentru a trimite erorile la ieșirea standard, utilizați:

2>&1 > logfile cmd

Acest lucru va redirecționa erorile către stdout.

Concluzie

Redirecționarea fluxurilor este un instrument vital în scripting-ul shell, permițând utilizatorilor să gestioneze eficient ieșirile și erorile. Prin utilizarea corectă a redirecționărilor, se pot crea scripturi mai clare și mai ușor de diagnosticat.

Pagina anterioară | Următoarea pagină