Yayın Düzenleyici (SED): Temel Bilgiler

Yayin Duzenleyici Sed Temel Bilgiler



Akış düzenleyici olarak da bilinen SED, oldukça kullanışlı bir araçtır. Belirli bir kelimeyi veya kalıbı aramak ve daha sonra kelimeye veya kalıba bir şeyler yapmak veya başka bir deyişle onu dönüştürmek için kullanılır. Windows'ta SED, 'bul' ve 'değiştir' işlevleri olarak da bilinir. SED, Ubuntu ile birlikte gelir; dolayısıyla hiçbir şey yüklemenize gerek yoktur; hemen kullanmaya başlayın. Bu eğitimde SED'yi veya akış düzenleyiciyi nasıl kullanacağınızı anlatacağız.

“S” Komutu

SED veya akış düzenleyicideki tüm komutların en önemlisi “s” komutudur. “S” yedek anlamına gelir. Sözdizimi aşağıdaki gibidir:







'S / normal ifade / yenisiyle değiştirme / bayraklar


Örnekler için “file.txt” adında bir dosya kullanalım. Eğer 'file.txt'yi katlarsanız şöyle görünür:




“s” komutunun nasıl çalıştığını göstermek için bir örnek kullanalım:



Ancak 'S / Birinci / ay / dosya.txt'im > ay.txt


Böyle bir ifade verildiğinde şu anlama gelir:





    • s – Yedek anlamına gelir.
    • ilk – “file.txt” adlı dosyada aranacak kelime.
    • ay – “İlk” kelimesinin yerini “ay” kelimesi alır.
    • i – Görmezden gelmek anlamına gelir. İlk aşamada bu kısmı görmezden geleceğiz.
    • file.txt – SED'in deseni veya kelimeyi arayacağı dosya. Bu durumda “ilk” kelimesi şöyle olacaktır:
    • file.txt dosyasında arandı

    • moon.txt – “İlk” kelimesi “ay” kelimesiyle değiştirildiğinde “moon.txt” altına kaydedilecektir.

Peki burada neler oluyor? SED, yalnızca ilk durumda 'ay' yerine 'ilk' kelimesini kullanır (bu, 'ilk' kelimesinin birden çok kez geçmesi durumunda, onun yerine geçmeyeceği veya birden çok kez değiştirilmeyeceği anlamına gelir). Aradığı dosyanın adı “file.txt” olup, dönüştürme veya değiştirme yapıldığında “moon.txt” altına kaydedilecektir.



Şuna benziyor:


Lütfen “/” işaretini olması gereken yere koymayı unutmayın. '/' işaretini atlarsanız SED komutu kabul etmeyecektir.

Şu ana kadar sadece “ilk” kelimesini “karşılaşılan” kelimesiyle değiştirdik. Şimdi, üçüncü satırdaki “satır” kelimesini (birçok kez, spesifik olarak dört kez geçiyor) “melek” kelimesiyle değiştirmek istediğimizi varsayalım.

Bu üçüncü hattı özellikle nasıl hedefleyeceğiz? Aşağıdaki komutu kullanıyoruz:

Ancak '3'ler / astar / melek / dosya.txt'im > melek.txt


Peki burada ne oldu? Peki, “3” satır numarasını belirtir. Bu nedenle üçüncü satıra gider. Daha sonra “file.txt” adlı dosyada “angel” yerine “line” kelimesini kullanın ve dönüştürülen dosyayı “angel.txt” olarak kaydedin.


“3” ve “4” satırlarını değiştirmek veya dönüştürmek istersek ne olur?

Ancak ' 3 ,4s / astar / melek / dosya.txt'im > angel2.txt



Önceki örnekte görmezden gelmek için “i” bayrağını kullandığımızı unutmayın. Artık global için “g” bayrağını kullanıyoruz.

“s” komutunun nasıl çalıştığını göstermek için bir örnek kullanalım:

Ancak 'S / astar / güneş / g' dosyası.txt > güneş.txt


Böyle bir ifade verildiğinde şu anlama gelir:

“G” küresel anlamına gelir. İlk örnekte “i” bayrağını kullandığımızda sadece tek bir yer değiştirme olduğunu unutmayın. Artık küresel yerine “g” eklediğimize göre bu, her yerde ikame anlamına geliyor. Yani birinci satır, ikinci satır, üçüncü satır ve son satır demek yerine ilk güneş, ikinci güneş, üçüncü güneş ve son güneş diyor. Dosyanın tamamındaki (her yerde) kelime satırını “güneş” kelimesiyle değiştirir.


Şimdi tek bir satırı içerdiği kelimeye göre seçmek istersek ne olur? Peki, “file.txt” dosyasının son satırında “son” kelimesinin bulunduğunu görebiliyoruz. Şimdi diyelim ki “Bu son satır. Bu son cümledir.' cümlesi “Bu son hayalet. Bu son cümledir.'

Aşağıdakileri yazıyoruz:

Ancak ' / son / S / astar / hayalet / ' dosya.txt > hayalet.txt


Buradaki 'son', SED'e 'son' kelimesini içeren satırı aramasını ve ardından o satırdaki 'satır' kelimesini 'hayalet' ile değiştirmesini söyler.


Şimdi bunun tersini yapmak istediğimizi varsayalım. 'Son' kelimesi olmayan her satırda 'satır' kelimesinin 'hayalet' olarak değiştirilmesini istediğimizi varsayalım. Aşağıdakileri yazalım:

Ancak ' / son /! S / astar / hayalet / ' dosya.txt > hayalet2.txt


Burada görebileceğiniz gibi, ('son' kelimesini içeren) son satır dışındaki her satırda 'satır' kelimesi 'hayalet' kelimesiyle değiştirilmiştir.


Bunu satır numaralarıyla da yapabiliriz:

Ancak ' 3 , 4 ! S / astar / gece / dosya.txt'im > gece.txt


Bu durumda, 3. ve 4. satırlar çıkarılmıştır ancak diğer tüm satırlarda 'satır' kelimesi 'gece' kelimesiyle değiştirilmiştir.

Çoklu Komutlar

Peki ya birden fazla komutunuz olsaydı? Bunu birer birer mi yoksa hepsini bir kerede mi yapmayı ve kendinize biraz zaman ve iş kazandırmayı mı tercih edersiniz?

Peki ya 'ilk' kelimesini 'gündüz', 'ikinci' kelimesini 'gece' ve 'geri kalan' kelimesini 'hayalet' olarak değiştirmek istersek? Bunu yapmak için noktalı virgül kullanıyoruz. Sonuna noktalı virgül koymayı unutmayın!

Lütfen “i” işaretini ya da “yok say” işaretini koymanıza gerek olmadığını, ancak dönüşüm ifadesinden sonra mutlaka eğik çizgiyi (/) koymanız gerektiğini unutmayın.

Şimdi bir örnekle kontrol edelim:

Ancak 'S / Birinci / gün / ; S / ikinci / gece / ; S / üçüncü / hayalet / ; S / son / hayalet / ;’ dosya.txt > kombinasyon.txt


Çözüm

Akış düzenleyicisi veya SED, bir kelimeyi veya modeli seçmenin ve onu dönüştürmenin bir yoludur. Aslında Windows'un 'bul' ve 'değiştir' işlevlerinin komut satırı eşdeğeridir. SED komutu gerçekten karmaşık olabilir ancak en azından temel bilgileri biliyorsanız, bunu üstlenmeye hazırsınız! SED aslında birçok işlevi olan çok güçlü bir araçtır. Hepsini tek bir eğitimde ele alamasak da SED'in temellerini ele aldık. Temelde, 's' yerine geçen kelimeyi temsil eden 's' komutunu kullanarak belirli bir kelimeyi nasıl dönüştüreceğimizi öğrendik. Kelimeleri başka kelimelerle değiştirebiliriz, değişikliğin gerçekleşeceği satırı seçerek seçebiliriz, hatta onu reddedebiliriz. Her iki durumda da bu SED'in en kolay kısmıdır.

Mutlu Kodlama!