Portál AbcLinuxu, 4. května 2025 09:21

Dotaz: Pridanie stringu na riadok ktory obsahuje X

2.4.2016 23:55 wwwwwwwww16
Pridanie stringu na riadok ktory obsahuje X
Přečteno: 202×
Odpovědět | Admin
Zdravim, mam subor XY a potreboval by som v nom upravit riadok, ktory obsahuje slovo XY. Ak je takyto vyskyt najdeny, tak je potrebne na zaciatok takehoto suboru pridat string "FROM=localhost" a prepisat povodny subor. Premyslal som nad sedom, awk a nic z toho sa mi nepodarilo uspesne :(. Dakujem.

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

3.4.2016 00:43 d.c. | skóre: 30
Rozbalit Rozbalit vše Re: Pridanie stringu na riadok ktory obsahuje X
Odpovědět | | Sbalit | Link | Blokovat | Admin
Takze se neupravuje radek, na kterem je slovo XY, ale uplne jiny (prvni radek v souboru)?

Urcite to jde udelat elegantneji, ale treba toto by delalo zhruba to, co je potreba, ne?

for soubor in * ; do if egrep -q '\bxy\b' $soubor ; then echo "FROM=localhost" > $soubor.new ; cat $soubor >> $soubor.new ; mv $soubor.new $soubor ; fi ; done

Takhle na prvni pohled v tom vidim nevyhodu, ze to nezachovava prava/vlastniky modifikovaneho souboru.
3.4.2016 02:03 ttt
Rozbalit Rozbalit vše Re: Pridanie stringu na riadok ktory obsahuje X
Odpovědět | | Sbalit | Link | Blokovat | Admin
find . -type f -exec sh -c "grep '\<XY\>' {} --quiet && sed -i '1iFROM=localhost' {} " \;

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.