Има много ситуации, в които трябва да заменим дума във файл. Независимо дали става дума за конфигурационен файл на услуга, текстов файл или файл, съдържащ бази данни, в този урок ще научите как да търсите и заменяте дума във файл на Linux.
Как да търсите и замествате дума във файл на Linux
Най-простият вариант, ако сте потребител на операционна система Linux, е да използвате командата „sed
". Поръчайте за редактор на потоци.
Да кажем като пример, че имаме в текстов файл (document.txt) думата "abc”, което искаме да заменим с „xyz". Командният ред, чрез който можем да заменим думата, ще бъде следният:
sed -ie 's/abc/xyz/g' document.txt
Когато изпълняваме командата, условието е да сме в папката, в която се намира файла document.txt.
Ако командата се изпълни от друго място, ще бъде записан пълният път на файла. например:
sed -ie 's/abc/xyz/g' /full/path/document.txt
Където "/full/path/
” е папката, в която се намира файлът document.txt.
След стартиране на командния ред, опцията "-i
" ще създаде архивен файл идентичен с оригиналния, но към разширението на който ще добави буквата "e
". В нашия случай резервният документ ще бъде 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.
Тази поръчка на „find & replace” не е валиден само за файлове .txt. Можете да замените думи във всеки файл, който съдържа текст. Дори във файловете на базата данни MySQL (.SQL)
Stealth Settings - Find & Replace Inside a Text File (Linux Bash Command Line).