Existuje mnoho situací, kdy potřebujeme nahradit slovo uvnitř souboru. Ať už se jedná o konfigurační soubor služby, textový soubor nebo soubor obsahující databáze, v tomto tutoriálu se naučíte, jak vyhledat a nahradit slovo v souboru na Linux.
Jak vyhledat a nahradit slovo v souboru na Linux
Nejjednodušší možnost, pokud jste uživatelem operačního systému Linux, je použít příkaz "sed
". Objednávka na editor streamu.
Řekněme jako příklad, který máme v textovém souboru (document.txt) slovo "abc", které chceme nahradit "xyz". Příkazový řádek, kterým můžeme slovo nahradit, bude následující:
sed -ie 's/abc/xyz/g' document.txt
Když příkaz spustíme, podmínkou je, že se nacházíme ve složce, kde se soubor nachází document.txt.
Pokud je příkaz spuštěn z jiného umístění, zapíše se úplná cesta k souboru. Např:
sed -ie 's/abc/xyz/g' /full/path/document.txt
Kde „/full/path/
“ je složka, ve které je soubor umístěn document.txt.
Po spuštění příkazového řádku možnost "-i
" vytvoří záložní soubor shodný s původním, ale k jehož rozšíření přidá písmeno "e
". V našem případě bude záložní dokument document.txte.
-i[SUFFIX], --in-place[=SUFFIX] : edit files in place (makes backup if extension supplied)
-e script, --expression=script : add the script to the commands to be executed.
Toto pořadí „find & replace” neplatí pouze pro soubory .txt. Slova můžete nahradit v libovolném souboru, který obsahuje text. Dokonce i v databázových souborech MySQL (.SQL)
Stealth Settings - Find & Replace Inside a Text File (Linux Bash Command Line).