Editor Strim (SED): Asas

WBOY
Lepaskan: 2024-03-20 15:11:22
ke hadapan
427 orang telah melayarinya

Editor Strim (SED): Asas

SED, juga dikenali sebagai Editor Strim, ialah alat yang sangat berguna. Ia digunakan untuk mencari perkataan atau corak tertentu dan kemudian melakukan beberapa operasi pada perkataan atau corak itu, atau dengan kata lain, mengubahnya. Dalam Windows, SED juga dikenali sebagai fungsi Cari dan Ganti. SED datang secara asli dengan Ubuntu, jadi tiada apa-apa untuk dipasang hanya mula menggunakannya. Dalam tutorial ini kami akan menunjukkan kepada anda cara menggunakan SED atau Editor Strim.

Komander "S"

Arahan paling penting dalam SED atau editor strim ialah arahan "s". "s" bermaksud pengganti. Sintaksnya adalah seperti berikut:

/regexp/replacement/bendera

Jadi mari kita gunakan fail yang dipanggil "file.txt" sebagai contoh. Begini rupa "file.txt" jika anda mengikutinya:


Mari kita gunakan contoh untuk menggambarkan cara arahan "S" berfungsi:

SED‘S/First/Moon/I'file.txt>moon.txt

Apabila ungkapan seperti ini diberikan, ia bermakna:

    • S—Ia bermaksud Pengganti.
    • first — perkataan untuk dicari dalam fail bernama "file.txt".
    • "Bulan" - "Pertama" digantikan dengan "Bulan".
    • bermaksud abaikan. Mari kita abaikan bahagian ini buat masa ini.
    • File.txt - Fail di mana SED akan mencari corak atau perkataan. Dalam kes ini perkataan "Pertama" ialah:
    • Dicari dalam file.txt

    • Moon.txt – Apabila perkataan “first” digantikan dengan “Moon”, ia akan disimpan di bawah “moon.txt”.

Dalam SED, gantikan perkataan "first" dengan "moon" hanya dalam contoh pertama (bermaksud jika "first" muncul beberapa kali, hanya kali pertama akan diganti). Perintah ini mencari dalam fail bernama "file.txt" dan setelah penggantian selesai, hasilnya akan disimpan ke fail "moon.txt".

Beginilah rupanya:


Sila ingat untuk meletakkan "/" di mana perlu. Jika "/" ditinggalkan, SED tidak akan menerima arahan.

Setakat ini, kami hanya menggantikan "kali pertama" dengan perkataan "bertemu". Sekarang, katakan kita mahu menggantikan perkataan "baris" (yang muncul beberapa kali - empat kali, lebih spesifik) dalam baris ketiga dengan perkataan "Malaikat".

Bagaimana kita menyasarkan baris ketiga secara khusus? Kami menggunakan arahan berikut:

SED‘3S/Line/Angel/I'file.txt>angel.txt

Jadi, apa yang berlaku di sini? Okay, "3" menentukan nombor baris. Jadi ia datang ke baris ketiga. Kemudian, gantikan "angel.txt" dengan "line" dalam fail bernama "file.txt" dan simpan fail yang ditukar sebagai "angel.txt".


Bagaimana jika kita mahu menggantikan atau menukar baris "3" dan "4"?

Sed‘3,4s/line/Angel/I’file.txt>angel2.txt


Perhatikan bahawa dalam contoh sebelumnya, kami menggunakan bendera "i" untuk mewakili abaikan. Sekarang, kami menggunakan bendera "g" untuk mewakili global.

Mari kita gunakan contoh untuk menggambarkan cara arahan "s" berfungsi:

sed’s/line/sun/g ‘file.txt> txt

Apabila ungkapan seperti ini diberikan, ia bermakna:

G bermaksud global. Ingat, dalam contoh pertama, apabila kita menggunakan bendera "i", terdapat hanya satu penggantian. Memandangkan kami menambahkan "g" pada global, ini bermakna terdapat alternatif di mana-mana sahaja. Jadi, daripada menyebut baris pertama, baris kedua, baris ketiga dan baris terakhir, ia mengatakan matahari pertama, matahari kedua, matahari ketiga dan matahari terakhir. Ia menggantikan baris perkataan (di mana-mana) dalam keseluruhan fail dengan perkataan "matahari".


Sekarang, bagaimana jika kita ingin memilih baris berdasarkan perkataan yang terkandung di dalamnya? Nah, kita dapat melihat bahawa baris terakhir "file.txt" mempunyai perkataan "terakhir". Sekarang, katakan kita mahu "Ini adalah baris terakhir". Ini kata terakhir." "Ini hantu terakhir. Ini perkataan terakhir."

Kami menulis seperti berikut:

Sed‘/last/S/line/host/’file.txt>.ghost.txt

"terakhir" di sini memberitahu SED untuk mencari baris yang mengandungi perkataan "terakhir" dan kemudian menggantikan perkataan "garisan" dengan "hantu" dalam baris itu.


Sekarang, katakan kita mahu melakukan sebaliknya. Katakan kita mahu setiap baris tanpa perkataan "last" mempunyai perkataan "line" ditukar kepada "host". Jom tulis perkara berikut:

Sila pilih ‘/last/! S/line/ghost/’file.txt>.ghost2.txt

Seperti yang anda lihat di sini, setiap baris kecuali baris terakhir (yang mengandungi perkataan "terakhir") mempunyai perkataan "hantu" digantikan dengan perkataan "garisan".


Kita juga boleh melakukan ini menggunakan nombor baris:

Sed‘3,4! S/行/夜/I’file.txt>night.txt

Dalam kes ini, baris 3 dan 4 ditinggalkan, tetapi setiap baris lain mempunyai perkataan "baris" digantikan dengan perkataan "malam".

Berbilang arahan

Jadi, bagaimana jika anda mempunyai berbilang arahan? Adakah anda lebih suka melakukannya satu demi satu atau sekaligus untuk menjimatkan masa dan kerja anda?

Apakah yang perlu kita lakukan jika kita ingin menukar perkataan "pertama" kepada "siang", perkataan "kedua" kepada "malam", dan perkataan "rehat" kepada "hantu"? Kami melakukan ini menggunakan koma bertitik. Jangan lupa letak titik koma di hujung!

Sila ambil perhatian bahawa anda tidak perlu meletakkan tanda "i" atau tanda "abaikan", tetapi anda perlu meletakkan garis miring (/) selepas frasa penukaran.

Sekarang, mari sahkan dengan contoh:

sed’s/first/day/;s/second/night/;s/third/ghost/;s/last/ghost/;’file.txt> combination.txt

Kesimpulan

Penyunting Strim atau SED ialah cara untuk memilih perkataan atau corak dan mengubahnya, ia secara berkesan adalah baris arahan yang setara dengan fungsi "cari" dan "ganti" Windows. Perintah SED boleh menjadi sangat kompleks, tetapi jika anda sekurang-kurangnya tahu asasnya, anda sudah bersedia! SED sebenarnya adalah alat yang sangat berkuasa. Walaupun kami tidak dapat merangkumi kesemuanya dalam satu tutorial, kami merangkumi asas SED. Pada asasnya, kami belajar cara menukar perkataan tertentu menggunakan perintah "s", di mana "s" bermaksud perkataan gantian. Kita boleh menggantikan perkataan dengan perkataan lain, memilih baris untuk menggantikan secara selektif, atau menafikannya. Sama ada cara, ini adalah bahagian paling mudah tentang SED.

Selamat pengekodan!

Atas ialah kandungan terperinci Editor Strim (SED): Asas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:mryunwei.com
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan