Domů > Užitečné bash příkazy a scripty > Hromadné nahrazení textu v souborech

Hromadné nahrazení textu v souborech

Tento příklad prohledá všechny soubory v adresáři /cesta/do/adresáře a nahradí text v souborech z „hledaný text“ za „nový text“:

find /cesta/do/adresáře -type f -print0 | xargs -0 sed -i 's|hledaný text|nový text|g'

Stejný příklad… ale nahradí celou řádku, ne jen hledaný text:

find /cesta/do/adresáře -type f -print0 | xargs -0 sed -i 's|.*hledaný text.*|nový text|g'

Dalším (a jednodušším) způsobem jak nahradit hromadně text v souborech je použitím příkazu replace.
Je potřeba mít ale nainstalován balíček mysql-server jehož je příkaz replace součástí.
Syntaxe je:

replace 'hledaný text' 'nový text' -- /cesta/do/adresáře/*

admin Užitečné bash příkazy a scripty

  1. voda
    | #1

    Pozor řádky s příkazy se nezobrazují celé, doporučil bych místo <pre> použít <code>.

  1. Žádné zpětné odkazy