Programowanie > Bash, skrypty powłoki

Prosty problem w bashu!

<< < (3/3)

xis:
2005-05-29 20:23:20 Tad napisał:

 > Jeśli jeszcze ktośby byłby miły i wytłumaczył mi co oznacza komenda: 2>&1,
 > oraz > /dev/null 2>&1.
 >  
 >

2 to standardowe wyjście błędu (stderr), a 1 to standardowe wyjście (stdout), zatem 2>&1 oznacza 'dołącz standardowe wyjście błędu do standardowego wyjścia (nie rozdzielaj ich na osobne)'.
> /dev/null oznacza 'przekieruj wyjście do /dev/null', czyli krótko i brzydko mówiąc 'olej wyjście' ;)

gomath:
> Dziekuję....
 > Wygląda na to , że o to mi chodziło.
 > Jeśli jeszcze ktośby byłby miły i wytłumaczył mi co oznacza komenda: 2>&1,
 > oraz > /dev/null 2>&1.
 >  
 >

Znak '>' to przekierowanie wyjścia programu.
0, 1, 2 to standardowe deskryptory plików, które otrzymuje każdy proces uruchamiany w linuksie. Domyślnie powiązane są z urządzeniem termianala.
1 to standardowe wyjście
2 to standardowe wyjście błędu
0 to standardowe wejście
Na standardowe wejście trafiają znaki z klawiatury, a wyjścia wysyłają znaki na ekran monitora. Dzięki znakowi '>' lub '>>' można zmienić to zachowanie.

I tak np.
'1>plik.log' przekieruje standardowe wyjście do pliku plik.log
'2>&1' przekieruje standardowe wyjście błędu tam, gdzie skierowane jest standardowe wyjście
'> /dev/null' przekieruje wyjście w pustkę :)

Więcej na google :)

Nawigacja

[0] Indeks wiadomości

[*] Poprzednia strona

Idź do wersji pełnej