Bul ve Değiştir metin, basit bir iş olabilir. metin editörleri daha basit. Ama aynı görevi yapmanız gerektiğinde ne olur? aynı anda birden fazla dosyada?
Şey, orada işler karmaşıklaşır ... veya o kadar da değil. |
Aşağıdaki örnekte, .txt uzantılı ve / home / user / myfolder / klasöründe bulunan tüm dosyalarda "mongo" kelimesinin tüm tekrarlarını "aurelio" kelimesiyle değiştirmek için sed kullanacağız.
bul / home / kullanıcı / klasörüm / -isim * .txt -exec sed -i "s / mongo / aurelio / g" {} \;
Bu kadar kolay ...
Bitirmeden önce, bazı metin editörlerinin bu işlemin bir grafik arayüz kullanılarak yapılmasına izin verdiğini belirtmek gerekir. Diğerlerinin yanı sıra, Jedit, Geany, Regexxer vb. Vurgulanmaya değer.
Süper
Gedit kullanıyorum
birden çok dosya için gedit ??? gibi???
AI arasına nasıl grep koyabilirim?
İhtiyacım olan şey, aşağıdakileri yapmak, index.html olarak adlandırılan ve "XXXXXXX" kelimesini içeren tüm dosyaları home içinde aramak ve bunu "YYYYYYYYYY" ile değiştirmek, çünkü yalnızca gerçekte olan dosyaları araması için yapılabilir. ipin var mı?
Çok teşekkür ederim !
Ben de Gedit kullanıyorum ama çok teşekkür ederim
Exec argümanını kaçırıyorsunuz. Doğru kod şöyle olacaktır:
bul / home / kullanıcı adı / klasörüm / -isim * .txt -exec sed -i "s / mongo / aurelio / g" {} \;
Selamlar 😀
Haklısın! Teşekkür ederim!
Ben zaten düzelttim. : =)
Bunu az önce denedim (KÖK olarak):
bul / usr / share / icons / ACYL-Allgray / -name * .svg -exec sed -i "s / 666666/000000 / g" {} \;
tüm bir simge kümesinin rengini değiştirmek için. Gerçek şu ki, bu çok güçlü bir komut, normalde bu görev dosya dosya düzenleme için saatlerimi alırdı.
Centos linux'ta satır numarasına göre birkaç dosyaya metin ekle
bul / home // public_html / res / -name -exec sed -i "2i \;" {} \;
kodun tamamı gelmedi, bu yüzden yeniden gönderdim:
find / home / user / public_html / res / -name dosyaadı.ext -exec sed -i "2i \ metin eklenecek" {} \;