Rumah Tutorial sistem LINUX Ringkasan komprehensif: Penjelasan terperinci tentang pemprosesan berbilang talian sed Linux

Ringkasan komprehensif: Penjelasan terperinci tentang pemprosesan berbilang talian sed Linux

Jan 05, 2024 pm 04:11 PM
sed pemprosesan berbilang talian

Dalam keadaan biasa, sed membaca baris untuk diproses ke dalam ruang corak, dan arahan dalam skrip memproses baris satu demi satu sehingga skrip dilaksanakan, kemudian baris keluaran, dan ruang corak kosong; Dengan tindakan tadi, baris baharu dalam fail dibaca sehingga fail diproses sepenuhnya. Walau bagaimanapun, pelbagai sebab, seperti pengguna yang mengharapkan arahan tertentu dalam skrip akan dilaksanakan dalam keadaan tertentu, atau berharap ruang corak akan dikekalkan untuk pemprosesan seterusnya, boleh menyebabkan sed tidak mengikut arahan semasa memproses fail keluar dari proses biasa. Pada masa ini, sed telah menyediakan beberapa arahan lanjutan untuk memenuhi keperluan pengguna. Jika anda ingin mempelajari arahan lanjutan sed, anda mesti terlebih dahulu memahami dua kawasan cache berikut:

1. Definisi ruang corak: Ruang corak ialah kawasan penimbal yang menyimpan apa yang baru dibaca oleh sed dari hujung input.
2. Definisi ruang tahan: Ruang tahan digunakan untuk menyimpan data sementara semasa memproses data ruang corak.

Terdapat juga beberapa parameter arahan:

g: Salin kandungan dalam ruang tahan ke ruang corak, dan kosongkan kandungan asal dalam ruang corak
G: Tambahkan kandungan dalam ruang tahan pada ruang pola
h: Salin kandungan dalam ruang corak ke ruang tahan, dan kandungan dalam ruang tahan asal dikosongkan
H: Tambahkan kandungan dalam ruang corak pada ruang tahan
x: Tukar kandungan ruang corak dan tahan ruang

Sebagai contoh, kami ingin membalikkan kandungan fail adalah seperti berikut:

[qiu.li@l-tdata1.tkt.cn6 ~]$ cat tmp 
1-line
2-line
3-line
Salin selepas log masuk

Lakukan arahan berikut:

[qiu.li@l-tdata1.tkt.cn6 ~]$ sed '2,$G;h;$!d' tmp
3-line
2-line
1-line
Salin selepas log masuk

Mari kita fahami secara beransur-ansur proses pelaksanaan di atas

1. Mari kita analisa tiga arahan berikut:

  • 2,$G: Jalankan arahan G dari baris kedua hingga baris terakhir
  • h: Laksanakan arahan h
  • $!d: Padam semua baris kecuali baris terakhir

2. Operasi khusus

  1. Imbas ke baris pertama
    1. Masukkan 1 baris ke dalam ruang corak; pada masa ini, ruang corak masih 1 baris;
    2. Laksanakan arahan h secara langsung, ruang simpanan sementara ialah 1 baris pada masa ini
    3. Laksanakan arahan d untuk memadam satu-satunya baris data dalam ruang corak Selepas pemadaman, ruang corak kosong
  2. Imbas ke baris kedua
    1. Letak 2 baris ke dalam ruang corak
    2. Laksanakan arahan G untuk menambah 1-baris ruang sementara ke belakang 2-baris ruang corak Pada masa ini, ruang corak ialah 2-linen1-baris;
    3. Laksanakan arahan h, kandungan ruang simpanan sementara ialah 2-linen1-baris
    4. Laksanakan arahan d dan ruang corak akan dikosongkan
  3. Imbas ke baris ketiga
    1. Letak 3 baris ke dalam ruang corak,
    2. Lakukan arahan G untuk menambah 2-linen1-baris dalam ruang sementara ke belakang 3-baris dalam ruang corak Pada masa ini, ruang corak ialah 3-linen2-linen1-baris;
    3. Melaksanakan arahan h, kandungan ruang simpanan sementara ialah 3-linen2-linen1-baris
    4. Jangan laksana $!d;
  4. Keluaran terus 3-linen2-linen1-line

Sudah tentu, arahan: sed '1!G;h;$!d' tmp juga boleh mempunyai kesan ini.

Atas ialah kandungan terperinci Ringkasan komprehensif: Penjelasan terperinci tentang pemprosesan berbilang talian sed Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Menguasai manipulasi teks dengan arahan sed Menguasai manipulasi teks dengan arahan sed Mar 16, 2025 am 09:48 AM

Antara muka baris arahan Linux menyediakan banyak alat pemprosesan teks, salah satu alat yang paling berkuasa ialah perintah SED. SED adalah singkatan Editor Stream, alat pelbagai fungsi yang membolehkan pemprosesan kompleks fail dan aliran teks. Apa itu SED? SED adalah editor teks bukan interaktif yang beroperasi pada input saluran paip atau fail teks. Dengan menyediakan arahan, anda boleh membiarkannya mengubah dan memproses teks dalam fail atau aliran. Kes -kes penggunaan yang paling umum termasuk memilih teks, menggantikan teks, mengubahsuai fail asal, menambah garis ke teks, atau mengeluarkan garis dari teks. Ia boleh digunakan dari baris arahan di bash dan kerang baris arahan yang lain. Sintaks perintah sed sed

Cara Mengira Fail dan Direktori di Linux: Panduan Pemula Cara Mengira Fail dan Direktori di Linux: Panduan Pemula Mar 19, 2025 am 10:48 AM

Mengira fail dan folder dengan cekap di Linux: Panduan Komprehensif Mengetahui bagaimana dengan cepat mengira fail dan direktori di Linux adalah penting untuk pentadbir sistem dan sesiapa yang menguruskan dataset besar. Panduan ini menunjukkan menggunakan perintah mudah-l

Cara menambah pengguna ke pelbagai kumpulan di linux Cara menambah pengguna ke pelbagai kumpulan di linux Mar 18, 2025 am 11:44 AM

Menguruskan akaun pengguna dan keahlian kumpulan dengan cekap adalah penting untuk pentadbiran sistem Linux/UNIX. Ini memastikan kawalan akses sumber dan data yang betul. Butir tutorial ini bagaimana untuk menambah pengguna ke pelbagai kumpulan dalam sistem Linux dan Unix. Kita

Cara menyenaraikan atau periksa semua kernel linux yang dipasang dari commandline Cara menyenaraikan atau periksa semua kernel linux yang dipasang dari commandline Mar 23, 2025 am 10:43 AM

Kernel Linux adalah komponen teras sistem operasi GNU/Linux. Dibangunkan oleh Linus Torvalds pada tahun 1991, ia adalah kernel seperti Unix yang bebas, monolitik, modular, dan multitasking. Di Linux, ada kemungkinan untuk memasang pelbagai kernel dengan nyanyian

Cara menaip simbol rupee India di Ubuntu Linux Cara menaip simbol rupee India di Ubuntu Linux Mar 22, 2025 am 10:39 AM

Panduan ringkas ini menerangkan cara menaip simbol rupee India dalam sistem operasi Linux. Pada hari yang lain, saya mahu menaip "Simbol Rupee India (₹)" dalam dokumen Word. Papan kekunci saya mempunyai simbol rupee di atasnya, tetapi saya tidak tahu bagaimana untuk menaipnya. Selepas

Mencari fail leviathan di linux Mencari fail leviathan di linux Mar 13, 2025 pm 12:11 PM

Pengenalan Di dalam alam Linux, di mana baris arahan sering kompas di mana kita menavigasi, pengurusan ruang cakera yang cekap adalah penting. Sama ada anda berlayar melalui projek peribadi atau mengarahkan kapal o

Linux Kernel 6.14 RC6 Dikeluarkan Linux Kernel 6.14 RC6 Dikeluarkan Mar 24, 2025 am 10:21 AM

Linus Torvalds telah mengeluarkan Linux Kernel 6.14 Release Calon 6 (RC6), melaporkan tiada isu penting dan mengekalkan pelepasan di landasan. Perubahan yang paling ketara dalam kemas kini ini menangani masalah menandatangani mikrokod AMD, sementara yang lain dari kemas kini

8 pelanggan SSH terbaik untuk Linux 8 pelanggan SSH terbaik untuk Linux Mar 15, 2025 am 11:06 AM

Disyorkan 8 Pelanggan SSH Terbaik Untuk Sistem Linux SSH (Secure Shell Protocol) adalah protokol rangkaian yang disulitkan yang digunakan untuk menjalankan perkhidmatan rangkaian dengan selamat pada rangkaian yang tidak selamat. Ia adalah bahagian penting dalam pengurusan pelayan moden dan menyediakan akses jauh yang selamat ke sistem. Pelanggan SSH (aplikasi yang menggunakan protokol SSH) adalah alat yang sangat diperlukan untuk pentadbir sistem, pemaju dan profesional IT. Pengurusan pelayan jauh adalah perkara biasa di dunia Linux, dan memilih pelanggan SSH yang betul adalah penting. Artikel ini akan membincangkan 8 pelanggan SSH terbaik untuk Linux. Kriteria pemilihan Apabila memilih pelanggan SSH terbaik untuk Linux, faktor berikut mesti dipertimbangkan: Prestasi: Kelajuan dan kecekapan pelanggan SSH

See all articles