Dikkkey
@Dikkkey
Начинающий программист.

Как заменить прописывание путей, если заменить расширение файлов?

Здравствуйте, сейчас нужно поменять все html файлы на php. Проект средний, но переписывать во всех файлах пути на php - не очень хочется. Подскажите, пожалуйста, как быстро переименовать все файлы на php, но чтобы пути не сбились?
  • Вопрос задан
  • 77 просмотров
Пригласить эксперта
Ответы на вопрос 2
zloy_kot_developer
@zloy_kot_developer
Разработчик всего понемногу
Ну как поменять расширение файлов быстро в голову не приходит. Разве что в папке с проектом выполнить поиск .html и потом в выдаче, переименовывать по очереди все в .php

Что касается путей, то поиск с заменой точно так же ищем .html, выделяем все (selected all), стираем и пишем .php. Все нормальные редакторы это умеют.
Ответ написан
@dzhebrak
Можно так сделать в корневой директории проекта:
find . -name "*.html" \
	-exec sed -i -E 's/"([a-zA-Z0-9\._\/-]+).html"/"\1.php"/g' {} \; \
	-exec rename .html .php {} \;

Перед выполнением обязательно сделайте бэкап сайта.

find . -name "*.html" \ - найти все файлы с расширением html
вторая строка - у каждого найденного файла заменить с помощью регулярного выражения текст между кавычками, который заканчивается на .html, на аналогичный с .php
-exec rename .html .php {} \; - переименовать каждый файл из html в php. Нужна команда rename (sudo apt-get install rename или sudo dnf install prename)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы