nasıl bash kullanarak bir dosyada her satırdan sonra bir dize eklerim? Eğer sed komutu kullanılarak yapılabilir, eğer öyleyse nasıl? senin sed
-i
parametresi aracılığıyla yer düzenleme izin veriyorsaBash'de, bir dosyadaki her satırın ardından bir dizeyi nasıl ekleyebilirim?
cevap
:
sed -e 's/$/string after each line/' -i filename
Değilse, geçici bir dosya yapmak zorunda:
typeset TMP_FILE=$(mktemp)
touch "${TMP_FILE}"
cp -p filename "${TMP_FILE}"
sed -e 's/$/string after each line/' "${TMP_FILE}" > filename
Sed biraz çirkin, yapabileceğin
Daha fazla dosya içeren dosyalar için hata Kabuğun maksimum argüman limitinden daha fazla. Dene: kedi foo | okurken bir; echo $ {a} çubuk yapın; veya bunun gibi bir şey yapıldı; çoğu durumda için uygun bir yedek. – alex
Ayrıca, boşluk bulunan satırlarda da başarısız olur. –
Er, hayır, başarısız oluyor Dennis. Kabuk maksimum argüman sınırı? Crikey sen pandisiyorsun. – hendry
Eğer böyle bir şey varsa(laminat) yardımcı, örneğin, bunu yapabilir: I awk
kullanmayı tercih
$ lam filename -s "string after each line"
. Yalnızca bir sütun varsa, $0
kullanın, bunun yerine son sütunu kullanın.
bir yolu,
awk '{print $0, "string to append after each line"}' file > new_file
veya bu,
awk '$0=$0"string to append after each line"' file > new_file
Ayrıca, satır numaralarını eklemek için (benim durumumda olduğu gibi), 'NR' değişkenini kullanabilirsiniz: awk' {print $ 0, NR} '' – andrybak
- 1. Nasıl bir dosyadaki her satırın başına bir dize getirebilirsiniz ki?
- 2. Dosyadaki her satırın başına bir dize nasıl eklenir
- 3. Tek bir url'den bir liste nasıl oluşturabilirim ve her satırın sonuna bir sayısal değer ekleyebilirim
- 4. Bir dosyadaki satırlardaki birden çok alt dizeyi okuma
- 5. VIM'deki her yorumdan önce boş bir çizgi nasıl ekleyebilirim (örneğin "#")?
- 6. #Defined bir dizeyi sistem() komutuna nasıl ekleyebilirim? (Win32)
- 7. Her satırın başına bir sayı ilişkilendirin
- 8. Matlabda her bir satırın diğer satırları ile her satırın element ekseni ile çarpımı nasıl yapılır?
- 9. Bir dosyadaki her karakteri ASCII numarasına nasıl değiştirirsiniz? Python
- 10. Dosyadaki her bir satır için sayısal verilerin sayısı nasıl bulunur?
- 11. Bir dizeyi bir enum üyesinin her üyesiyle nasıl ilişkilendirebilirim?
- 12. Dosyadaki her dalda görüntülenen dosyalar
- 13. Dosyadaki bir satırı nasıl değiştirebilirim, silebilir veya ekleyebilirim veya Perl'deki bir dosyanın başına ekleyebilir miyim?
- 14. Her satırın sonunda awk ile bir karakter nasıl eklenir?
- 15. Bir dosya pythonunda her satırın nasıl çıkışı verilir
- 16. Bir dizideki satırın her sütunu nasıl okunur? Php
- 17. pandalar veri çerçevesindeki her satırın farklı bir değerle nasıl çarpılacağı
- 18. Bir dizeyi
- 19. Her satırın ilk sözcüğünü sil
- 20. Bir dosyadaki her satırdaki son öğeyi (basamak) bulma (Python)
- 21. Her satırın başına sayı nasıl eklenir?
- 22. Unix'teki her satırın veri formatı nasıl değiştirilir?
- 23. Bir dizeyi
- 24. Bir dizeyi Io'deki bir listeye nasıl dönüştürebilirim?
- 25. Her satırın sonunda dolar işareti
- 26. Bir wstring'e nasıl ekleyebilirim?
- 27. ios grafiğinde her sütun için nasıl bir ad ekleyebilirim?
- 28. Dosyadaki tek bir baytlık bayttan nasıl çıkarılır?
- 29. XQuery'de bir dizeyi nasıl açıyorsunuz?
- 30. Her satırın sonuna bir virgül ekleyin php kullanarak
sayesinde işe yaradı! –
Geçici dosyaya neden dokunmuyorsunuz? Ve ben “sed” komutunu “cp” nin başarısına koşullu kılardım ya da orijinali kaybolabilirdi. –
Geçici adla hızlı bir şekilde ayırmak için dosyaya dokundum. Bu gerekli olmayabilir. Bence cp'nin başarısı üzerine sedd komutunu şart koşmakla ilgili haklısınız. Bu düzeltmeyi yapmak için kodu neden düzenlemiyoruz? Biraz umursamıyorum! Sevgiler, Tom –