Массовая правка html-файлов через SSH

12
H
На сайте с 03.08.2005
Offline
188
1858

Народ подскажите как и что. Вообще проблема такая.

Был полностью HTML-сайт www.site.ru, сделали новый плюс перевезли его на новый урл www.newsite.ru. Попросили старый файл закинуть на поддомен нового, т.е. old.newsite.ru, на старом сайте все урлы были прописаны абсолютно. Т.е. все меню и ссылки кидают обратно на www.site.ru/...

Сразу поясню зачем нужно - со старого сайта дергаем контент потихоньку, поэтому перенести на поддомен стоит задача и там просто закрыть от индексации. А чтобы не сел яндекс со старого урла сделали 301-редиректы. Т.е. в данный момент получается замкнутый круг, заходим на поддомен, идем по любой ссылке... в итоге попадаем к себе на новый урл-сайт)

Услуги: программирование (/ru/forum/991783), а также дизайн и верстка (/ru/forum/996863) Продам koloda.ru $6000
DV
На сайте с 01.05.2010
Offline
644
#1

Шеллом внутри директорий сервера надо кидать, а не посредством SCP.

VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
H
На сайте с 03.08.2005
Offline
188
#2

DenisVS, эх, если бы я понял о чем речь.. Одно я знаю, можно пакетом отредактировать и перезалить, но мне интереснее решить эту проблему непосредственно на сервере уже. Говорили, что реально, в интернете пока ничего толкового не могу найти.

DV
На сайте с 01.05.2010
Offline
644
#3

Ну и зайдите по SSH, и командами. На худой конец, mc откройте, тот же Нортон.

Polimer
На сайте с 01.09.2006
Offline
84
#4

Если понимать вопрос буквально, то все довольно просто. Нужно подключиться к шеллу и выполнить команду:

cd /путь_к_каталогу_со_старым_сайтом

sed -i 's|http://www\.site\.ru|http://www\.newsite\.ru/old|g' *.html

Но лучше это применять, только если Вы понимаете, что делают эти строчки и предварительно сделав резервную копию.

Программные решения для бизнеса. (http://frontsoft.ru/) На заказ. Дорого.
SI
На сайте с 03.12.2007
Offline
130
#5
hero:
... в интернете пока ничего толкового не могу найти.

Как говорят, чтобы задать правильный вопрос, нужно уже знать половину ответа.

http://www.google.ru/search?q=find+sed

-= Онлайн сервисы =-
H
На сайте с 03.08.2005
Offline
188
#6

Проблема еще в том, что в папке /www еще два уровня подпапок, и хотелось бы применить это к ним, тк у нас все аккуратно разложено и подпапок сотня:)

Подскажите шелл-команду если есть такая возможность..

bukachuk
На сайте с 07.09.2008
Offline
97
#7

Выше писали

find + sed решает проблему погуглите есть много примеров.

Программирование PHP,Mysql (/ru/forum/934470)
H
На сайте с 03.08.2005
Offline
188
#8
Polimer:
Если понимать вопрос буквально, то все довольно просто. Нужно подключиться к шеллу и выполнить команду:
cd /путь_к_каталогу_со_старым_сайтом

sed -i 's|http://www\.site\.ru|http://www\.newsite\.ru/old|g' *.html
Но лучше это применять, только если Вы понимаете, что делают эти строчки и предварительно сделав резервную копию.

Домен не в подпапке newsite.ru/old а на поддомене old.newsite.ru. Я правильно понимаю что вы для /old написали? Применимо ли это к файлам в подпапках /www/.../... Например?

---------- Добавлено 01.02.2013 в 00:38 ----------

bukachuk:
Выше писали

find + sed решает проблему погуглите есть много примеров.

Гуглю) как без этого. Ссыкливо просто без советов профи гуглить, а главное применять)

bukachuk
На сайте с 07.09.2008
Offline
97
#9

find . -name "*.html" -print0 | xargs -0 sed -i -e 's/<что>/<на что>/'

Подменяемое и подмену надо экранировать по правилам регулярок. Сделайте копию сайта в другом месте и там балуйтесь, не с первого раза, но получиться.

Менять будет все файлы *.html в данном каталоге и во всех вложенных.

kosty56rus
На сайте с 21.04.2012
Offline
30
#10

Вот попробуйте скрипт поиска и замена текста в файлах на сервере. Впринципе должен помочь справится с Вашей задачей. Во вложении сам скрипт и txt как запускать.

zip replace.zip
Мир состоит из бездельников, которые хотят иметь деньги, не работая, и придурков, которые готовы работать, не богатея
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий