Копировать / публиковать изображения, связанные с html-файлами, на другой сервер и обновлять HTML-файлы, ссылаясь на них - PullRequest
0 голосов
/ 28 апреля 2010

Я публикую контент из Drupal CMS на статических HTML-страницах в другом домене, размещенном на втором сервере. Создание HTML-файлов было простым (использование PHP / MySQL для записи файлов).

У меня есть список изображений, на которые есть ссылки в моем HTML, и все они находятся в каталоге / userfiles /.

cat *.html | grep -oE [^\'\"]+userfiles[\/.*]*/[^\'\"] | sort | uniq

, который выдает список файлов

http://my.server.com/userfiles/Another%20User1.jpg
http://my.server.com/userfiles/image/image%201.jpg
...

Мой следующий шаг - скопировать эти изображения на второй сервер и перевести теги в html-файлы.


Я понимаю, что sed - вероятно, инструмент, который мне понадобится. E.g.:

sed 's/[^"]\+userfiles[\/image]\?\/\([^"]\+\)/\/images\/\1/g'

Должен изменить http://my.server.com/userfiles/Another%20User1.jpg на / images / Another% 20User1.jpg , но я не могу понять, как именно я буду использовать скрипт. То есть Могу ли я использовать его для обновления файлов на месте или мне нужно жонглировать временными файлами и т. д. Тогда как я могу убедиться, что файлы перемещены в правильное место на втором сервере

1 Ответ

0 голосов
/ 28 апреля 2010

Можно использовать sed, чтобы изменить файл на месте, используя опцию -i.

Для вашего использования вам решать, проще ли / лучше создать новый файл с изменениями из старого, затем скопируйте во второй домен с помощью scp (или чего-то подобного).Или может быть проще сначала скопировать файл, а затем изменить его, как только он окажется на удаленном сервере (таким образом меньше управления новыми именами файлов).

...