Cara Mengarahkan stderr ke stdout di Bash

How Redirect Stderr Stdout Bash



Perintah di Linux mengambil beberapa input dari pengguna, yang bisa berupa file atau atribut apa pun, dan setelah dijalankan, mereka memberikan beberapa output yang disebut output standar. Keluaran standar dapat berupa keluaran sukses atau keluaran kesalahan; keduanya akan ditampilkan di layar terminal Anda. Namun dalam beberapa kasus, Anda ingin menyimpan output standar ke file untuk pengujian atau debugging kode. Di Linux, output ini dapat diarahkan ke file, dan proses menangkapnya disebut redirection.







Setiap proses Di Linux menghasilkan tiga aliran data, stdin, stdout, dan stderr:



  • stdin : Mengambil input dari pengguna melalui keyboard
  • stdout : Menampilkan output di layar
  • stderr : Menampilkan informasi kesalahan di layar

Setiap aliran data memiliki id numerik:



ID numerik Nama
0 stdin
1 stdout
2 stderr

Mari kita jelaskan pengalihan sedikit lebih detail:





Cara mengarahkan ulang keluaran Standar dan kesalahan Standar di Bash:

Untuk mengarahkan ulang output standar dari perintah, kita akan menggunakan 1 dengan operator pengalihan yang lebih besar dari tanda >:

$ls 1>stdout.txt

Perintah di atas akan membuat file dan menempatkan output standar dari perintah ls di file stdout.txt.



Untuk membaca file stdout.txt, gunakan:

$kucingstdout.txt

Kami juga dapat mengarahkan kesalahan standar ke file dengan menggunakan perintah:

$kucingfile saya.txt2>stderr.txt

Untuk melihat file stderr.txt, gunakan:

$kucingstderr.txt

Pastikan penggunaan 2 akan lebih besar dari tanda >. Karena tidak ada file myfile.txt di direktori, perintah cat akan memberikan kesalahan yang akan ditambahkan ke file stderr.txt.

Output standar ini dapat diarahkan dengan satu perintah juga, gunakan:

$ls 1>stdout.txt2>stderr.txt

Output dari perintah ls akan ditulis dalam stdout.txt file, tapi stderr.txt akan tetap kosong karena tidak akan ada kesalahan.

Sekarang mari kita lakukan untuk stderr.txt:

$kucingfile saya.txt1>stdout.txt2>stderr.txt

Gunakan perintah yang disebutkan di bawah ini untuk membaca stderr.txt.

$kucingstderr.txt

Dan tentu saja, stdout.txt akan kosong.

Kesimpulan :

Perintah Linux saat dijalankan memberikan output standar yang bisa berupa output sukses atau output kesalahan. Umumnya, output ini tidak dapat dialihkan menggunakan operator pengalihan; kita perlu menggunakan id numerik tertentu dengan tanda >. Dalam panduan ini, kami mempelajari cara menggunakan tombol numerik ini untuk mengarahkan output standar ke file dengan contoh.