«sed» etiketlenmiş sorular

sed, metni filtrelemek ve dönüştürmek için kullanılan bir komut satırı akış düzenleyicisidir.

6
XY'den kısa çizgiler nasıl kaldırılır?
2048 karakterden daha uzun satırları nasıl kaldıracağımla ilgili bir soru buldum: XY'den uzunsa satırı silmek nasıl? S: Ama 4 karakterden kısa çizgileri nasıl kaldırabilirim? Bu nedenle, bir dosyada 1 veya 2 veya 3 uzunluğa sahip satırları kaldırın. GÜNCELLEME: Pek çok İYİ cevap için teşekkürler, ancak yalnızca bir tanesini işaretleyebilirim


3
Solaris'te bir komuttan çıktıyı renklendirmek için sed komutunu kullanma
Hem linux hem de solaris üzerinde çalışması gereken bir ksh betiğim var. Belirli komutların çıktılarını renklendirmeye çalışıyorum. Linux üzerinde çalışır (özellikle RHEL6), ancak solarislerde (SunOS 5.10) çalışmaz. Linux'da komut ("test" çıkışı doğru şekilde kırmızı renkte gösterilmiştir): [amartin@linuxbox:~]$ echo "test" | sed 's,.*,\x1B[31m&\x1B[0m,' test Solaris'e verilen komut ("test" çıkışı renkli değil): …

6
Her yeni satırdan önce satır başı nasıl eklenir?
Yalnızca \nyeni satırlar için kullanan bir dosyam var, ancak \r\nher yeni satır için olması gerekiyor . Bunu nasıl yapabilirim? Örneğin, Vim'de kullanarak çözdüm :%s/\n/\r\n/g, ancak bir komut dosyası veya komut satırı uygulaması kullanmak istiyorum. Baska öneri? Bunu aramaya çalıştım sed veyagrep , ancak kaçış dizisi geçici çözümleriyle hemen kafam karıştı …
28 sed  grep  newlines 

3
Sed -i '1d' ne yapar?
Bunun sedmetin dosyasını işlemek için bir komut olduğunu biliyorum . Googling'imden, -idosya üzerinde işlem yapmak anlamına geldiği anlaşılıyor , doğru mu? Ne hakkında '1d'?
28 sed 

4
Belirli bir aralıktaki çizgi uzunluğu için "grep" nasıl yapılır?
NOT: Bu soru, Soru-Cevap bölümünün tamamlayıcısıdır: Belirli bir aralıktaki satır uzunluğu * için "grep" nasıl *? Yalnızca minimum veya 3 karakter uzunluğunda, ancak 10 karakterden uzun olmayan bir metin dosyasından (yeni satırla ayrılmış bir sözcük listesi) satırları almam gerekiyor. Örnek: GİRİŞ: egyezményét megkíván ki alma kevesen meghatározó ÇIKTI: megkíván alma …
28 bash  sed  grep  perl 


5
Sed üzerindeki desen aralığını sil (veya awk) ile sil
Desenli bananasatırları ve ondan sonraki 2 satırı kaldıracak aşağıdaki kodu kullanıyorum : sed '/banana/I,+2 d' file Çok uzak çok iyi! Fakat daha önce 2 satırı kaldırmak için ihtiyacım var banana, ancak “eksi işareti” veya başka bir şeyle elde edemiyorum (ne grep -v -B2 banana fileyapmalı ama yapmamalı gibi): teresaejunior@localhost ~ …


11
Yalnızca yeni satırları değiştirmek için daha iyi bir yol olmalı mı?
Cümle başına bir satır yazma alışkanlığım var çünkü genellikle LaTex'e bir şeyler derlerim ya da satır sonlarının yok sayılacağı başka bir formatta yazıyorum. Yeni bir paragrafın başlangıcını belirtmek için boş bir satır kullanıyorum. Şimdi, bu tarzda yazılmış ve sadece düz metin olarak göndermek istediğim bir dosyam var. Tüm tek satır …

7
Onları içeren iki desen arasında ilk oluşum nasıl seçilir
Bunlar dahil olmak üzere iki model arasında ilk oluşumu nasıl seçebilirim. Tercihen sedveya awk. Sahibim: text something P1 something content1 content2 something P2 something text something P1 something content3 content4 something P2 something text P1 ve P2 arasındaki çizgilerin ilk oluşumunu istiyorum (P1 ve P2 çizgileri dahil): something P1 something …

1
Sol parantez sed ile nasıl değiştirilir?
Dosyamda (bazı karakterlerle değiştirmem gerekiyor ve yapamıyorum. \(sed'de gruplama için kullanılır \\(ve sed ile kullandığımda , \(karakterin sadece karakter olarak görülmediği görülmüştür (. Bana zor bir durum gibi geldi.
27 sed 

3
sed yakalama grupları çalışmıyor
Biçimin bir dizesi var [0-9]+\.[0-9]+\.[0-9]. Birinci, ikinci ve üçüncü sayıları ayrı ayrı çıkarmam gerekiyor. Anladığım kadarıyla, yakalama grupları bunu yapabilmelidir. Kullanmak gerekir sed "s/\([0-9]*\)/\1/g, ilk sayı elde etmek sed "s/\([0-9]*\)/\2/gikinci numarası almak ve sed "s/\([0-9]*\)/\3/güçüncü sayısını almak için. Her durumda, tüm dizeyi alıyorum. Bu neden oluyor?
27 sed 


9
Sed ile yalnızca ilk oluşumunu değiştirmek ister misiniz
Orijinal dosya claudio antonio claudio michele Dosya sonucu sadece "claudio" nın ilk oluşumunu "claudia" ile değiştirmek istiyorum claudia antonio claudio michele denedim sed -e '1,/claudio/s/claudio/claudia/' nomi Ancak küresel bir ikame gerçekleştirin. Neden?
26 sed 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.