Замена текста в больших файлах через SSH / Хостинг / Топики

Замена текста в больших файлах через SSH

Шпаргалка о том, как заменить текст в файле на сервере, который не загружается в текстовый редактор из-за большого размера.

Столкнулся с описанной выше проблемой, нашел несколько вариантов решения, делюсь ими.

Массовая замена текста через SSH в нескольких файлах

find /folder/ -name '*.html' -exec sed -i 's/старый_текст/новый_текст/g' '{}' \;

Разбираемся:

  • find ищет файлы в обозначенной папке /folder/, имена -name которых совпадают с шаблоном *.html;
  • -exec для каждого файла из списка найденных и выполняет команду sed, которая осуществляет замену текста.

если вы хотите, чтобы, допустим, после замены текста у вас осталась резервная копия исходного файла, тогда вместе c -i можно приписать "_old" или "_bak", чтобы получилось что-то наподобие -i_bak, тогда вместе с заменяемым файлом создастся еще один — «имя_файла.расширение_old».
25 марта 2018, 20:21    Андрей Копп Хостинг 0    299 +1

Отзывы ()

    Вы должны авторизоваться, чтобы оставлять комментарии.