Penguasaan Baris Perintah Linux · Pelajaran

Strim Piawai dan Pengalihan

Pelajari tentang stdin, stdout, stderr dan cara mengalihkannya menggunakan `|`, `>`, `>>` dan `<`.

Pelajaran 1 daripada 416 langkah

Strim Piawai dan Pengalihan ialah pelajaran Penguasaan Baris Perintah Linux percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Penguasaan Baris Perintah Linux, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Penguasaan Baris Perintah Linux merangkumi sejumlah 4 pelajaran.

Apakah Strim Piawai?

Dalam terminal Linux, arahan berkomunikasi menggunakan 'strim piawai'. Anggaplah ini sebagai saluran lalai untuk data mengalir masuk dan keluar daripada sesuatu atur cara.

  • Input Piawai (stdin): Tempat arahan mendapatkan inputnya (biasanya papan kekunci).
  • Output Piawai (stdout): Tempat arahan menghantar hasil biasanya (biasanya skrin).
  • Ralat Piawai (stderr): Tempat arahan menghantar mesej ralatnya (biasanya skrin).

Strim ini membolehkan anda mengawal cara arahan berinteraksi!

Output Piawai (`stdout`)

Apabila arahan berjaya dijalankan dan menghasilkan hasil, hasil itu dihantar ke output piawai. Secara lalai, stdout dipaparkan terus pada skrin terminal anda.

Contohnya, apabila anda menggunakan arahan echo, outputnya pergi ke stdout.

Mengubah Hala `stdout` (Menulis Ganti)

Simbol > (lebih besar daripada) digunakan untuk mengubah hala output piawai dari skrin ke fail. Jika fail itu tidak wujud, fail tersebut dicipta. Jika sudah wujud, kandungannya akan ditulis ganti!

Ini berguna untuk menyimpan hasil arahan bagi kegunaan kemudian.

Contoh Menulis Ganti `stdout`

Cuba jalankan contoh ini. Perhatikan bahawa output arahan echo tidak dipaparkan pada skrin, sebaliknya disimpan dalam message.txt. Kemudian, cat memaparkan kandungan fail tersebut.

echo "Hello CoddyKit!" > message.txt
cat message.txt

Mengubah Hala `stdout` (Menambah)

Bagaimana jika anda mahu menambah output ke dalam fail tanpa memadam kandungan sedia ada? Di sinilah >> digunakan!

Operator >> (dua simbol lebih besar daripada) mengubah hala output piawai ke fail, dengan menambah kandungan baharu pada penghujung fail.

Contoh Menambah `stdout`

Mari tambah satu lagi baris pada fail message.txt tanpa kehilangan baris pertama. Jalankan kod dan perhatikan output arahan cat yang terakhir.

echo "Hello CoddyKit!" > message.txt
echo "Welcome to Linux!" >> message.txt
cat message.txt

Input Piawai (`stdin`)

Input piawai ialah saluran yang melaluinya arahan menerima data. Secara lalai, stdin datang daripada papan kekunci – anda menaip arahan atau nilai input secara langsung.

Sesetengah arahan direka untuk memproses input yang anda berikan atau yang datang daripada sumber lain.

Mengubah Hala Input dengan `<`

Simbol < (kurang daripada) membolehkan anda mengubah hala input piawai daripada fail dan bukannya papan kekunci. Ini amat berguna untuk memasukkan data daripada fail ke dalam arahan yang menjangkakan input.

Arahan itu kemudiannya memproses kandungan fail seolah-olah anda menaipnya.

Contoh Input daripada Fail

Arahan wc -l mengira baris. Di sini, kita akan mencipta fail dan kemudian menggunakan < supaya wc -l membaca inputnya terus daripada fail tersebut.

echo "Line 1" > mydata.txt
echo "Line 2" >> mydata.txt
wc -l < mydata.txt

Ralat Piawai (`stderr`)

Apabila arahan menghadapi masalah atau ralat, arahan itu menghantar mesej diagnostik kepada ralat piawai. Seperti stdout, stderr biasanya dipaparkan pada skrin anda secara lalai.

Memisahkan stderr daripada stdout membantu anda mengesan ralat dengan mudah.

Mengubah Hala `stderr` dengan `2>`

Untuk mengubah hala ralat piawai ke fail, anda menggunakan pengecam fail 2 diikuti operator pengubahan hala: 2>.

Ini membolehkan anda menangkap mesej ralat dalam fail log, sambil memastikan output utama kekal kemas. Anda juga boleh mengubah hala stdout dan stderr ke fail yang sama menggunakan &> atau > file 2>&1.

Contoh Pengubahan Hala Ralat

Mari cuba menyenaraikan direktori yang tidak wujud. Kita akan mengubah hala mesej ralat ke fail bernama errors.log.

ls non_existent_dir 2> errors.log
cat errors.log

Merangkaikan Arahan dengan Paip (`|`)

Simbol | (paip) ialah salah satu ciri shell Linux yang paling berkuasa. Simbol ini menyambungkan output piawai (stdout) sesuatu arahan terus kepada input piawai (stdin) arahan lain.

Ini membolehkan anda mencipta saluran paip pemprosesan data yang kompleks dengan merangkaikan arahan mudah.

Contoh Paip: `ls` kepada `wc`

Di sini, output ls -l (senarai fail terperinci) disalurkan sebagai input kepada wc -l (kiraan perkataan - baris). Ini secara berkesan mengira bilangan item yang disenaraikan oleh ls -l.

ls -l | wc -l

Semakan Pantas

Pertimbangkan urutan arahan berikut:

echo "Apple" > fruits.txt
echo "Banana" >> fruits.txt
echo "Cherry" > fruits.txt
cat fruits.txt

Apakah kandungan akhir fruits.txt yang dipaparkan oleh arahan cat?

Imbas Kembali: Strim & Pengubahan Hala

Syabas! Anda telah mempelajari asas strim piawai dan cara mengubah halanya:

  • Strim Piawai: stdin (input), stdout (output biasa), stderr (output ralat).
  • >: Mengubah hala stdout ke fail dan menulis gantinya.
  • >>: Mengubah hala stdout ke fail dan menambah kandungan padanya.
  • <: Mengubah hala kandungan fail ke stdin sesuatu arahan.
  • 2>: Mengubah hala stderr ke fail.
  • | (Paip): Menyambungkan stdout sesuatu arahan kepada stdin arahan lain.

Teknik ini penting untuk aliran kerja baris arahan yang berkuasa. Seterusnya, anda akan mempelajari cara menapis teks menggunakan arahan grep yang hebat!

Percuma untuk bermula

Pelajari Penguasaan Baris Perintah Linux dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
12
Pelajaran
48

Soalan Lazim

Adakah pelajaran “Strim Piawai dan Pengalihan” percuma?

Ya — teks penuh “Strim Piawai dan Pengalihan” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Penguasaan Baris Perintah Linux, tingkat taraf kepada CoddyKit PRO. Kursus Penguasaan Baris Perintah Linux merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Strim Piawai dan Pengalihan”?

Pelajari tentang stdin, stdout, stderr dan cara mengalihkannya menggunakan `|`, `>`, `>>` dan `<`. Anda berlatih Penguasaan Baris Perintah Linux menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Penguasaan Baris Perintah Linux?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Penguasaan Baris Perintah Linux di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Strim Piawai dan Pengalihan” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Penguasaan Baris Perintah Linux ini?

Ya. Setiap pelajaran Penguasaan Baris Perintah Linux menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Strim Piawai dan Pengalihan
  2. Menapis Teks dengan `grep`
  3. Manipulasi Teks dengan `sed` dan `awk`
  4. Menggabung dan Menyusun Output dengan sort, uniq dan cut
← Kembali ke Penguasaan Baris Perintah Linux