Rumah >Tutorial sistem >LINUX >Ringkasan komprehensif: Penjelasan terperinci tentang pemprosesan berbilang talian sed Linux
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
Lakukan arahan berikut:
[qiu.li@l-tdata1.tkt.cn6 ~]$ sed '2,$G;h;$!d' tmp 3-line 2-line 1-line
Mari kita fahami secara beransur-ansur proses pelaksanaan di atas
1. Mari kita analisa tiga arahan berikut:
2. Operasi khusus
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!