Ako nájsť a nahradiť text vo viacerých súboroch z terminálu

Nájsť a nahradiť text môže byť jednoduchá úloha pomocou textových editorov základnejšie. Čo sa však stane, keď potrebujete urobiť tú istú úlohu vo viacerých súboroch súčasne?

No a veci sa tam komplikujú ... alebo až tak veľmi.


V nasledujúcom príklade použijeme sed na nahradenie všetkých výskytov slova „mongo“ slovom „aurelio“ vo všetkých súboroch, ktoré majú príponu .txt a ktoré sú v priečinku / home / user / myfolder /.

find / home / user / myfolder / -name * .txt -exec sed -i "s / mongo / aurelio / g" {} \;

To ľahké ...

Pred dokončením stojí za zmienku, že niektoré textové editory vám to umožňujú pomocou grafického rozhrania. Okrem iných stojí za vyzdvihnutie Jedit, Geany, Regexxer atď.


Pridať ako preferovaný zdroj v Google