Sed: Ketahui Alat Pemprosesan Teks Klasik ini

Pendedahan: Sokongan anda membantu mengekalkan laman web ini! Kami memperoleh bayaran rujukan untuk beberapa perkhidmatan yang kami cadangkan di halaman ini.


Sed adalah program utiliti dan bahasa skrip sederhana yang digunakan untuk menyunting teks. Nama itu adalah singkatan dari “stream editor”, dan tujuannya adalah penyuntingan aliran input – biasanya baris individu dalam fail, atau satu aliran dari stdin (input standard).

Bahasa tidak begitu hebat. Walaupun sed adalah Turing lengkap, sama sekali tidak efisien untuk tugas pengaturcaraan sebenar – contohnya hanya mempunyai dua pemboleh ubah yang tersedia. Akan tetapi, sangat berguna untuk mencari dan menyunting pola teks secara berkala dalam fail, dari baris perintah atau dari skrip shell.

Perintah sed yang paling penting adalah s, yang merupakan perintah penggantian. Perintah itu mengambil dua argumen, ditambah bendera pilihan. Contohnya, jika anda ingin memperbetulkan setiap contoh ejaan Inggeris ke “warna” Amerika dan menulis versi yang diperbetulkan ke fail baru, anda mungkin melakukan yang berikut dari baris arahan:

sed s / color / color / g baru.file

Penjelasan ringkas:

  • S / memulakan arahan penggantian.
  • Apa sahaja antara pasangan slash pertama adalah corak yang sesuai. Dalam hal ini, itu adalah kata “warna”, tetapi bisa juga merupakan ungkapan biasa – pola, bukan rentetan karakter tertentu.
  • Selepas corak untuk dipadankan adalah tali gantian.
  • G bermaksud “global”, atau “lakukan ini setiap kali, bukan hanya kali pertama.”

Kedua-dua corak untuk dipadankan dan penggantiannya boleh berubah-ubah. Sekiranya corak untuk dipadankan adalah ungkapan biasa, dan anda ingin mengubahnya (bukan hanya menggantinya) anda boleh menggunakan ampersand ( & ) untuk menunjukkan corak yang dipadankan. Sebagai contoh, andaikan anda mahu mengubah semua URL teks biasa menjadi pautan HTML. Anda mungkin melakukan ini:

sed ‘s_http [:] // [^] * _&_ ‘

  • Ini menggunakan pembatas garis bawah dan bukan garis miring, untuk memudahkan membaca dengan semua garis miring yang sudah ada dalam URL.
  • Corak untuk dipadankan adalah ungkapan biasa yang sesuai dengan URL yang dibentuk dengan baik (walaupun dengan cara yang terhad).
  • Penggantian membuat tag tetap dengan corak yang dipadankan (URL) dalam atribut href dan teks teg.

Jenis mencari-dan-ganti ini adalah alasan asal sed diciptakan, dan terus menjadi penggunaan yang paling biasa.

Resources Sumber dan Tutorial Dalam Talian

  • Sed – Pengenalan dan Tutorial di Unix Wizard’s Grymoire, memberikan intro dan rujukan yang baik untuk sed;
  • Sed Tutorial adalah pengenalan yang baik yang menerangkan beberapa kerja di belakang tabir yang sedang dilakukan oleh sed;
  • Sed Tutorial di Tutorials Point adalah panduan konsep yang sangat penting dan kaedah yang sangat jelas;
  • Menggunakan Sed adalah tutorial dua bahagian yang hebat dari Digital Ocean;
  • YouTuber Kris Occhipinti mempunyai Tutorial Video Sed 18 bahagian;
  • Sed-Tutorial dari LinuxHowtos adalah tutorial kecil tetapi bermanfaat mengenai sed;
  • Sed Subreddit tidak begitu aktif, tetapi banyak soalan sed (dan yang berkaitan) muncul di subreddit regex dan commandline;

Buku mengenai Sed

  • Sedih & Awk (1997) oleh Dougherty dan Robbins, adalah teks klasik pada dua alat teks baris perintah yang paling penting; jika anda hanya dapat membaca satu perkara di sed, mungkin inilah yang boleh anda baca; lihat juga rakan Aed yang berguna & Rujukan Poket Awk;
  • Panduan Definitif untuk Sed: Tutorial dan Rujukan (2013) oleh Daniel A Goldman, memberikan perspektif yang jauh lebih kontemporari mengenai penggunaan sed, dengan penekanan khusus pada GNU sed (gsed);
  • Koleksi Skrip Ksh, Awk, dan Sed: Menguasai Pengaturcaraan Unix Melalui Contoh Praktikal () oleh Steve Myers, adalah buku masakan skrip shell yang berguna.

Sed vs Awk dan Pilihan Lain

Alat sed adalah salah satu daripada banyak pilihan untuk mencari dan memanipulasi teks dari baris perintah atau dalam skrip shell. Alat yang paling kerap dibandingkan adalah Awk, tetapi ada juga grep. Selain itu, anda boleh menggunakan bahasa skrip yang lebih mantap seperti Perl atau Python.

Berikut adalah beberapa sumber untuk membantu anda menentukan alat mana yang terbaik untuk keperluan pencarian teks dan penyuntingan di tempat:

  • Grep vs Sed vs Awk: Apa yang Harus Diketahui oleh Pengguna Shell Linux yang Mahir / Lanjutan adalah artikel hebat yang menerangkan tiga alat pemprosesan teks utama, dengan banyak perincian mengenai kapan menggunakannya;
  • Bilakah Menggunakan Sed / Awk Over Perl atau Python adalah forum yang memuat naik perbualan yang hebat mengenai kapan menggunakan bahasa skrip penuh berbanding alat pemprosesan teks yang lebih mudah;
  • Perbezaan Fungsional dan Prestasi Sed, Awk, dan Utiliti Parsing Unix Lain memberikan perbandingan teknikal terperinci, termasuk nota mengenai kelajuan;
  • Apakah Perbezaan antara Sed dan Awk? dianggap “luar topik” di StackExchange, tetapi untungnya sebilangan pengguna memberikan jawapan yang sangat berguna; jika anda tidak mempunyai masa untuk penjelasan yang lebih terperinci di atas, halaman ini memberikan gambaran keseluruhan 30 saat yang terbaik.

Buku dan Sumber mengenai Topik Berkaitan

Untuk menggunakan sed dengan berkesan, anda memerlukan kemahiran dalam dua bidang yang berkaitan: ungkapan biasa dan skrip shell pada umumnya. Berikut adalah beberapa buku dan tutorial dalam talian untuk membantu anda melengkapkan kemampuan anda.

Sebagai tambahan kepada sumber ini, anda juga harus melihat halaman kami di Awk dan Bash.

Buku

  • Memperkenalkan Ekspresi Biasa (2012) oleh Michael Fitzgerald adalah teks intro yang sangat membantu menjadikan topik yang berpotensi menakutkan ini mudah difahami; ini juga termasuk skrip sed khususnya, serta info tentang penggunaan regex di Perl
  • Menguasai Ekspresi Biasa (2006) oleh Jeffrey Friedl adalah sumber regex peringkat seterusnya anda, setelah teks pengantar di atas;
  • Classic Shell Scripting (2005) oleh Robbins dan Beebe adalah buku yang merangkumi baris perintah Unix yang paling penting dan alat skrip, termasuk sed; Arnold Robbins, salah seorang pengarang, juga merupakan pengarang bersama Sed klasik & Buku awk tertera di atas.

Sumber Dalam Talian

Terdapat banyak sumber dalam talian untuk topik ini. Berikut adalah beberapa perkara yang paling berguna:

  • RegExr adalah alat dalam talian untuk belajar, membina, dan menguji ungkapan biasa;
  • RegEx101 adalah penguji ekspresi tetap dalam talian yang lain, dengan lembaran cheat terbina dalam dan maklum balas penghuraian yang berguna;
  • Regex Cheat Sheet memberikan rujukan yang komprehensif, apabila anda perlu mengetahui rentetan watak yang nampaknya rawak yang perlu anda taip untuk mencari rentetan watak yang kelihatan rawak yang anda cari;
  • The Grymoire, yang disebutkan di atas, adalah banyak maklumat untuk skrip Unix;
  • Tutorial Skrip Linux Shell adalah salah satu tutorial dalam talian terbaik untuk belajar Bash.

Ringkasan

Ada masa ketika hampir semua pengguna komputer yang serius mengetahui alat baris perintah seperti sed sangat baik. Untuk kebaikan atau keburukan, masa itu sudah lama berlalu. Hari ini, bahkan banyak pembangun maju tidak tahu menggunakan alat asas ini.

Walau bagaimanapun, jika anda berminat untuk benar-benar memaksimumkan kecekapan anda sebagai pengguna yang berkuasa – terutamanya dalam persekitaran Linux, Unix, atau Mac – mempunyai pegangan yang baik pada baris perintah adalah mustahak. Ini sangat berguna jika anda melakukan pengembangan atau pentadbiran web, kerana sebahagian besar web berjalan di pelayan Linux, dan kebanyakan pengurusan pelayan jauh dilakukan di baris perintah.

Sed, yang termasuk dalam hampir semua sistem operasi Linux dan Unix, dapat membantu anda mencari apa yang anda cari. Apabila anda tidak mempunyai alat carian yang mesra pengguna komputer desktop, ini boleh menjadi mustahak. Tidak sukar untuk dipelajari, dan anda tidak akan menyesal kerana mengetahui cara menggunakan alat klasik ini.

Bacaan dan Sumber Lanjut

Kami mempunyai lebih banyak panduan, tutorial, dan infografik yang berkaitan dengan komputer:

  • Pengenalan dan Sumber Pengaturcaraan Linux: penyelaman mendalam ke dalam pengaturcaraan Linux ini masuk ke kernel di mana semua tindakannya.
  • Sumber Pengaturcaraan Bash: mulakan dengan shell baris arahan Unix yang paling penting.
  • Awk Resources: Ketahui semua tentang alat adik sed. Awk.

Senarai Utama Alat Webmaster A-Z

Sed dan Awk dan Bash hanyalah sebahagian daripada koleksi besar alat yang membolehkan pentadbir sistem menguruskan sistem operasi. Senarai Utama Alat Webmaster A-Z akan memberi banyak pertolongan kepada anda dalam melakukan kerja anda.

Senarai Utama Alat Webmaster A-Z
Senarai Utama Alat Webmaster A-Z

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map