10 Contoh Sed Ini Akan Menjadikan Anda Pengguna Kuasa Linux

10 Contoh Sed Ini Akan Menjadikan Anda Pengguna Kuasa Linux

Menyunting fail teks dan output terminal adalah tugas seharian bagi mereka yang mentadbir mesin Linux. Utiliti baris perintah seperti sed membolehkan pengguna mengubah dan mengubah kandungan fail teks langsung dari tetingkap terminal.





Dalam artikel ini, kita akan membincangkan perintah sed secara terperinci, bersama dengan beberapa contoh penting yang menunjukkan kekuatan utiliti sed di Linux.





Apakah Perintah Sed?

Perintah sed, yang merupakan singkatan dari Penyunting Aliran , adalah alat baris perintah yang memungkinkan pengguna Linux melakukan operasi berdasarkan teks pada file dan output terminal. Dengan menggunakan sed, pengguna dapat mencari dan mengganti kata-kata tertentu dalam teks, menampilkan bahagian output tertentu, dan mengedit fail teks tanpa membukanya.





Tiga operasi asas yang disokong oleh perintah sed adalah:

  1. Penyisipan
  2. Penghapusan
  3. Penggantian (Cari dan ganti)

Pengguna lanjutan juga dapat menerapkan ekspresi biasa dengan perintah sed untuk menyunting aliran teks dengan lebih berkesan.



Sintaks asas arahan adalah:

sed [options] [pattern] [filepath]

... di mana pilihan adalah pelbagai fungsi perintah, corak adalah ungkapan biasa atau skrip yang anda mahu padankan, dan laluan fail adalah jalan ke fail teks yang mengandungi teks.





streaming video dari telefon ke xbox satu

10 Contoh Perintah sed Linux

Sekiranya anda merancang untuk menjadi pengguna Linux biasa, mengetahui cara mengedit fail, cari dan ganti kata-kata tertentu, dan menapis output terminal mungkin berguna bagi anda. Bahagian ini merangkumi beberapa contoh arahan sed yang pasti akan mengubah anda menjadi pengguna kuasa Linux.

Kami akan menggunakan fail teks berikut untuk demonstrasi dalam catatan.





This is a demo text file.
It is an amazing file that will help us all.
The sed command is also great for stream editing.
Want to learn how to use the command?
This is another line in the file.
This is the third general line in the file.
This file is named as textfile.
This is a apple.
This is a orange.

1. Lihat Julat Garisan

Perintah Linux seperti kepala dan ekor mengeluarkan baris pertama atau sepuluh terakhir fail teks. Tetapi bagaimana jika anda ingin memasukkan kandungan antara dua baris tertentu dalam fail? Dalam situasi seperti itu, perintah sed mungkin berguna.

Untuk mengeluarkan kandungan antara baris 3 dan 5 fail textfile.txt :

sed -n '3,5p' textfile.txt

The -n bendera menghalang sed memaparkan ruang corak pada akhir setiap kitaran. Anda juga boleh menggunakan --senyap dan --senyap pilihan dan bukannya -n . The hlm hujah bermaksud mencetak dan digunakan untuk memaparkan garis yang sesuai kepada pengguna.

Melaksanakan perintah yang disebutkan di atas contoh fail menghasilkan output berikut.

The sed command is also great for stream editing.
Want to learn how to use the command?
This is another line in the file.

Untuk mengeluarkan keseluruhan kandungan fail kecuali untuk rentang yang ditentukan, gunakan d bendera dan bukannya hlm dalam arahan:

sed '3,5d' textfile.txt

The d bendera menghapus rentetan yang sesuai dari output dan memaparkan isi kandungannya.

This is a demo text file.
It is an amazing file that will help us all.
This is the third general line in the file.
This file is named as textfile.
This is a apple.
This is a orange.

2. Paparkan Garisan Tidak Berurutan

Untuk mencetak baris tidak berturut-turut antara pelbagai julat dalam fail:

sed -n -e '1,2p' -e '5,6p' textfile.txt

Pengeluaran:

This is a demo text file.
It is an amazing file that will help us all.
This is another line in the file.
This is the third general line in the file.

The -Dan bendera menolong dalam melaksanakan pelbagai tindakan menggunakan satu perintah.

3. Masukkan Ruang Antara Garisan

Sekiranya atas sebab apa pun anda ingin memasukkan baris kosong di antara setiap baris dalam fail teks, gunakan G berhujah dengan arahan sed lalai.

memasang google play pada tablet api
sed G textfile.txt

Untuk memasukkan beberapa baris kosong dalam output, hantarkan beberapa G hujah yang dipisahkan oleh separuh kolon ( ; ) watak.

sed 'G;G' textfile.txt

4. Ganti Kata dalam Fail Teks

Sekiranya anda ingin mengganti setiap kejadian kata tertentu dengan kata lain, gunakan s dan g hujah dengan perintah. Sintaks asas untuk menggantikan perkataan menggunakan perintah sed adalah:

sed s/originalword/replaceword/g filename

Dengan menggunakan sintaks yang disebutkan di atas, anda boleh mengganti perkataan luar biasa dengan super dalam fail textfile.txt :

sed s/amazing/super/g textfile.txt

The s hujah menunjukkan penggantian dan juga g arahan digunakan untuk mengganti kandungan yang sesuai dengan kandungan pengganti yang ditentukan.

Untuk menggantikan kejadian kedua kata dengan sed, lulus nombor ke g hujah. Dalam kes ini:

sed s/amazing/super/g2 textfile.txt

Sekiranya anda ingin mengabaikan kes watak semasa mengganti perkataan, gunakan memberi bukannya g , di mana i bermaksud abai kes.

sed s/Amazing/super/gi textfile.txt

Berkaitan: Menggunakan Vi? Inilah Cara Membuka Fail Kemudian Simpan dan Keluar

5. Kata Pengganti Dalam Julat

Anda juga boleh menggantikan perkataan dalam julat tertentu.

sed '2,5s/amazing/super/g' textfile.txt

6. Lakukan Pelbagai Gantian sekaligus

Sekiranya anda ingin melakukan dua atau lebih penggantian sekaligus, asingkan perintah dengan separuh kolon ( ; ) watak.

sed 's/amazing/super/g;s/command/utility/gi' textfile.txt

Sistem akan memaparkan output berikut.

This is a demo text file.
It is an super file that will help us all.
The sed utility is also great for stream editing.
Want to learn how to use the utility?
This is another line in the file.
This is the third general line in the file.
This file is named as textfile.
This is a apple.
This is a orange.

7. Ganti Perkataan Hanya Sekiranya Padanan Ditemui

Anda juga dapat menggunakan perintah sed untuk mengganti kata hanya jika terdapat padanan yang sesuai. Contohnya, untuk menggantikan perkataan ke dengan sebuah sekiranya perkataan jingga hadir dalam barisan:

sed -e '/orange/ s/a/an/g' textfile.txt

Mengeluarkan arahan yang disebutkan di atas akan mengeluarkan:

This is a demo text file.
It is an super file that will help us all.
The sed utility is also great for stream editing.
Want to learn how to use the utility?
This is another line in the file.
This is the third general line in the file.
This file is named as textfile.
This is a apple.
This is an orange.

Perhatikan bahawa perkataan ke dalam barisan Ini adalah epal tidak diganti kerana sistem tidak menemui perkataan jingga di dalamnya.

8. Kata Pengganti Menggunakan Ungkapan Biasa

Bagi mereka yang tahu bagaimana menggunakan ungkapan biasa, melakukan operasi pada rentetan menggunakan perintah sed menjadi lebih mudah. Anda boleh melaksanakan ungkapan biasa untuk meningkatkan kekuatan perintah.

Untuk menggantikan semua kejadian perkataan Hebat atau luar biasa dengan super :

sed -e 's/[Aa]mazing/super/g' textfile.txt

Begitu juga, anda juga dapat menggunakan ungkapan biasa lanjutan untuk menjalankan operasi tertentu menggunakan perintah sed.

9. Paip sed Dengan Perintah Lain

Anda juga boleh membuat rangkaian dengan perintah Linux yang lain. Sebagai contoh, anda boleh membuat paip lspci perintah dengan sed untuk menambah ruang kosong antara baris dalam output.

lspci | sed G

Untuk menggantikan perkataan tertentu dalam output dari pertunjukan laluan ip arahan:

ip route show | sed s/src/source/g

Perintah di atas menggantikan perkataan sumber sebagai ganti perkataan asal src .

Berkaitan: Cara Menggunakan Perintah Cari untuk Mencari Fail di Linux

10. Edit dan Sandarkan Fail Asal

Semasa anda menggunakan fail sistem, menyandarkan fail asal semasa membuat perubahan adalah penting. Ini akan membantu anda mengembalikan perubahan sekiranya berlaku kerosakan.

Untuk membuat sandaran fail asal menggunakan sed, gunakan -i bendera dalam arahan.

muat turun permainan lama untuk windows 7
sed -i'.backup' 's/amazing/super/g' textfile.txt

Fail baru akan dibuat dengan nama textfile.txt.backup . Anda boleh memastikan bahawa kedua-dua fail itu berbeza menggunakan perbezaan arahan.

diff textfile.txt textfile.txt.backup

Mengedit Rentetan di Linux Dengan sed

Kadang-kadang, semasa anda bekerja dengan fail teks di terminal, memformat dan menyunting output untuk pembacaan yang lebih baik menjadi suatu keharusan. Sed dan awk adalah utiliti baris perintah di Linux yang membolehkan pengguna bekerja dengan berkesan dengan fail teks dengan membahagikan data menjadi baris yang berasingan.

Ramai pengguna sukar untuk menghafal hujah dan bendera arahan sed kerana terdapat banyak yang tersedia untuk digunakan. Mengetahui cara mendapatkan manual baris perintah untuk sebarang arahan Linux akan membantu anda keluar dari situasi seperti ini dengan mudah.

Berkongsi Berkongsi Tweet E-mel 7 Cara Mendapatkan Bantuan Command Line di Linux

Semua arahan penting untuk belajar mengenai perintah Linux dari baris perintah

Baca Seterusnya
Topik-topik yang berkaitan
  • Linux
  • Penyunting Teks
  • Terminal
  • Arahan prompt
Mengenai Pengarang Deepesh Sharma(79 Artikel Diterbitkan)

Deepesh adalah Editor Junior untuk Linux di MUO. Dia menulis panduan maklumat mengenai Linux, bertujuan untuk memberikan pengalaman yang menggembirakan kepada semua pendatang baru. Tidak pasti mengenai filem, tetapi jika anda ingin bercakap mengenai teknologi, dia adalah lelaki anda. Pada masa lapang, anda dapat menemuinya membaca buku, mendengar genre muzik yang berbeza, atau bermain gitarnya.

Lebih Banyak Dari Deepesh Sharma

Langgan buletin kami

Sertailah buletin kami untuk mendapatkan petua, ulasan, ebook percuma, dan tawaran eksklusif!

Klik di sini untuk melanggan