Bu 10 Sed Örneği Sizi Linux Uzmanı Yapacak

Bu 10 Sed Örneği Sizi Linux Uzmanı Yapacak

Metin dosyalarını ve terminal çıktısını düzenlemek, Linux makinelerini yönetenler için günlük bir iştir. sed gibi komut satırı yardımcı programları, bir kullanıcının bir metin dosyasının içeriğini doğrudan terminal penceresinden değiştirmesine ve değiştirmesine izin verir.





Bu yazıda, Linux'ta sed yardımcı programının gücünü gösteren bazı temel örneklerle birlikte sed komutunu ayrıntılı olarak tartışacağız.





sed Komutu Nedir?

Kısaltması olan sed komutu Akış Düzenleyici , Linux kullanıcılarının dosyalar ve terminal çıktıları üzerinde metin tabanlı işlemler gerçekleştirmesini sağlayan bir komut satırı aracıdır. Kullanıcılar sed kullanarak bir metindeki belirli kelimeleri bulabilir ve değiştirebilir, çıktının belirli bir bölümünü görüntüleyebilir ve metin dosyalarını açmadan düzenleyebilir.





sed komutu tarafından desteklenen üç temel işlem şunlardır:

  1. sokma
  2. silme
  3. Değiştirme (Bul ve değiştir)

İleri düzey kullanıcılar, metin akışlarını daha verimli bir şekilde düzenlemek için sed komutuyla normal ifadeler de uygulayabilir.



Komutun temel sözdizimi şöyledir:

sed [options] [pattern] [filepath]

...nerede seçenekler komutun çeşitli işlevleri, Desen eşleştirmek istediğiniz normal ifade veya komut dosyasıdır ve dosya yolu metni içeren metin dosyasının yoludur.





root olmadan android'de önceden yüklenmiş uygulamalar nasıl kaldırılır

10 Linux sed Komutu Örneği

Normal bir Linux kullanıcısı olmayı planlıyorsanız, dosyaları nasıl düzenleyeceğinizi, belirli sözcükleri nasıl arayacağınızı ve değiştireceğinizi ve terminal çıktısını nasıl filtreleyeceğinizi bilmek sizin için yararlı olabilir. Bu bölüm, sizi kesinlikle bir Linux uzmanına dönüştürecek sed komutunun bazı örneklerini kapsar.

Gönderide gösteri için aşağıdaki metin dosyasını kullanacağız.





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. Bir Satır Aralığı Görüntüle

head ve tail gibi Linux komutları, bir metin dosyasının ilk veya son on satırını verir. Peki ya bir dosyadaki iki belirli satır arasındaki içeriği almak istiyorsanız? Bu gibi durumlarda, sed komutu kullanışlı olabilir.

Dosyanın 3. ve 5. satırları arasındaki içeriğin çıktısını almak için metin dosyası.txt :

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

NS -n flag, sed'in her döngünün sonunda desen alanını görüntülemesini engeller. Ayrıca --sessizlik ve --sessiz yerine seçenekler -n . NS P argüman şu anlama gelir Yazdır ve eşleşen satırları kullanıcıya göstermek için kullanılır.

Örnek dosya üzerinde yukarıda belirtilen komutun çalıştırılması aşağıdaki çıktıyı üretir.

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

Belirtilen aralık dışında tüm dosya içeriğinin çıktısını almak için NS yerine bayrak P komutta:

sed '3,5d' textfile.txt

NS NS flag, eşleşen dizeleri çıktıdan siler ve içeriğin geri kalanını görüntüler.

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. Ardışık Olmayan Satırları Görüntüle

Dosyadaki birden çok aralık arasında ardışık olmayan satırları yazdırmak için:

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

Çıktı:

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.

NS -Ve bayrak yardımcı olur yürütme tek bir komut kullanarak birden çok eylem.

3. Çizgiler Arasına Boşluk Ekle

Herhangi bir nedenle bir metin dosyasındaki her satır arasına boş satırlar eklemek isterseniz, G varsayılan sed komutuyla argüman.

hangi gmail hesabının varsayılan olduğu nasıl değiştirilir
sed G textfile.txt

Çıktıya birden çok boş satır eklemek için, birden çok G ile ayrılmış argümanlar noktalı virgül ( ; ) karakter.

sed 'G;G' textfile.txt

4. Metin Dosyasındaki Bir Kelimeyi Değiştirin

Belirli bir sözcüğün her oluşumunu başka bir sözcükle değiştirmek istiyorsanız, s ve G komutuyla argümanlar. sed komutunu kullanarak sözcükleri değiştirmek için temel sözdizimi şöyledir:

sed s/originalword/replaceword/g filename

Yukarıda belirtilen sözdizimini kullanarak kelimeyi değiştirebilirsiniz. inanılmaz ile birlikte Süper dosyanın içinde metin dosyası.txt :

sed s/amazing/super/g textfile.txt

NS s argüman belirtir ikame ve G komutu, eşleşen içeriği belirtilen değiştirme içeriğiyle değiştirmek için kullanılır.

Sözcüğün ikinci geçtiği yeri sed ile değiştirmek için, G argüman. Bu durumda:

sed s/amazing/super/g2 textfile.txt

Kelimeleri değiştirirken karakter durumlarını yok saymak istiyorsanız, vermek onun yerine G , nerede ben anlamına gelir görmezden gelmek durum.

sed s/Amazing/super/gi textfile.txt

İlgili: Vi'yi mi kullanıyorsunuz? İşte Bir Dosya Nasıl Açılır Sonra Kaydedilir ve Çıkılır

5. Bir Aralığın İçindeki Kelimeleri Değiştirin

Belirli bir aralıktaki kelimeleri de değiştirebilirsiniz.

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

6. Aynı Anda Birden Fazla Değiştirme Yapın

Aynı anda iki veya daha fazla değişiklik yapmak istiyorsanız, komutları noktalı virgül ( ; ) karakter.

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

Sistem aşağıdaki çıktıyı gösterecektir.

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. Kelimeleri Yalnızca Bir Eşleşme Bulunursa Değiştirin

Yalnızca satırda belirli bir eşleşme bulunursa, bir sözcüğü değiştirmek için sed komutunu da kullanabilirsiniz. Örneğin, kelimeyi değiştirmek için ile ile birlikte bir eğer kelime turuncu satırda mevcut:

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

Yukarıda belirtilen komutun verilmesi şu sonucu verecektir:

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.

kelime olduğunu unutmayın ile çizgide Bu bir elma sistem kelimeyi bulamadığı için değiştirilmedi turuncu içinde.

8. Normal İfadeler Kullanarak Kelimeleri Değiştirin

Normal ifadelerin nasıl kullanılacağını bilenler için sed komutunu kullanarak dizeler üzerinde işlem yapmak çok daha kolay hale gelir. Komutun gücünü artırmak için normal ifadeler uygulayabilirsiniz.

Kelimenin tüm oluşumlarını değiştirmek için İnanılmaz veya inanılmaz ile birlikte Süper :

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

Benzer şekilde, sed komutunu kullanarak belirli işlemleri yürütmek için gelişmiş normal ifadeler de kullanabilirsiniz.

9. Diğer Komutlarla Boru Bağlantısı

sed'i diğer Linux komutlarıyla da zincirleyebilirsiniz. Örneğin, boruyu lspci çıktıdaki satırlar arasına boşluk eklemek için sed ile komut.

lspci | sed G

Çıktıdaki belirli kelimeleri değiştirmek için ip rota gösterisi emretmek:

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

Yukarıda belirtilen komut, sözcüğün yerini alır. kaynak orijinal kelimenin yerine kaynak .

İlgili: Linux'ta Dosyaları Aramak için Bul Komutu Nasıl Kullanılır

10. Orijinal Dosyayı Düzenleyin ve Yedekleyin

Sistem dosyalarıyla çalışırken, değişiklik yaparken orijinal dosyayı yedeklemek önemlidir. Bu, bir şeylerin bozulması durumunda değişiklikleri geri almanıza yardımcı olacaktır.

Orijinal dosyayı sed kullanarak yedeklemek için -ben komutta bayrak.

nakit uygulaması nasıl silinir
sed -i'.backup' 's/amazing/super/g' textfile.txt

Adıyla yeni bir dosya oluşturulacak metin dosyası.txt.yedekleme . kullanarak iki dosyanın farklı olup olmadığını kontrol edebilirsiniz. fark emretmek.

diff textfile.txt textfile.txt.backup

sed ile Linux'ta Dizeleri Düzenleme

Bazen, terminalde metin dosyalarıyla çalışırken, daha iyi okunabilirlik için çıktıyı biçimlendirmek ve düzenlemek bir zorunluluk haline gelir. Sed ve awk, Linux'ta bir kullanıcının verileri ayrı satırlara bölerek metin dosyalarıyla verimli bir şekilde çalışmasına olanak tanıyan komut satırı yardımcı programlarıdır.

Pek çok kullanıcı, sed komutunun argümanlarını ve bayraklarını ezberlemekte zorlanırlar, çünkü bunların birçoğu kullanılabilir durumdadır. Herhangi bir Linux komutu için komut satırı kılavuzlarını nasıl edineceğinizi bilmek, bu tür durumlardan kolayca kurtulmanıza yardımcı olacaktır.

Paylaş Paylaş Cıvıldamak E-posta Linux'ta Komut Satırı Yardımı Almanın 7 Yolu

Komut satırından Linux komutları hakkında bilgi edinmek için gerekli tüm komutlar

Sonrakini Oku
İlgili konular
  • Linux
  • Metin düzeltici
  • terminal
  • Komut istemi
Yazar hakkında Deepesh Sharma(79 Makale Yayımlandı)

Deepesh, MUO'da Linux için Junior Editördür. Tüm yeni gelenlere keyifli bir deneyim sunmayı amaçlayan Linux hakkında bilgilendirici kılavuzlar yazıyor. Filmlerden emin değilim, ama teknoloji hakkında konuşmak istersen, o senin adamın. Boş zamanlarında onu kitap okurken, farklı müzik türleri dinlerken veya gitar çalarken bulabilirsiniz.

Deepesh Sharma'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın