Master-X
Регистрация
|
Вход
Форум
|
Новости
|
Статьи
Главная
»
Форум
»
Линк Листы
»
Тема:
Как убить ресип?
Новая тема
Ответить
цитата
29/03/10 в 11:14
Mihasus
Всем привет. Подскажите пожалуйста, если нужно снести ресип, может есть быстрый способ это сделать на серваке на большом количестве зеркал или надо вручную искать и удалять?
цитата
29/03/10 в 14:55
Sergeyka
закажи скрипт - 10 баксов цена вопроса, а могут и за бесплатно
цитата
29/03/10 в 15:24
Crow
или купи сервак у Webazilla. мне парни снесли все ненужные ресипы за 10 минут причем фри
цитата
29/03/10 в 17:34
FedorovEV
Вот код скрипта поиска и замены строк в папке и во всех вложенных папках. Тока всем папкам надо установить права 777 перед запуском скрипта. Пробовал сам - работает.
Код:
<?
$work_dir="./";
// рабочая директория - обязательно должна заканчиваться
// символом "/"
$excl_dir=array();
$excl_dir[0]="./no_work_here/";
$excl_dir[1]="./and_here/and_here/";
// директории, где поиск/замена не производятся - обязательно должны заканчиваться
// символом "/"
$file_mask_1=".html";
$file_mask_2=".js";
// маски обрабатываемых файлов (будут обработаны все файлы,
// содержащие данную строку в имени)
$search_str="test"; #что ищем
$replace_str="TEST"; #чем заменяем
//******************************************************
$level=0;
function sr($dir)
{
global $level,$file_mask_1,$file_mask_2,$search_str,$replace_str,$excl_dir;
echo "<b>";
for ($i=0;$i<$level;$i++) echo "* * ";
echo $dir."</b>";
if (@in_array($dir,$excl_dir))
{
echo " - needn't search & replace<br>";
return;
}
echo "<br>";
$p = dir($dir);
while($ent=$p->read())
{
if ($ent!="." && $ent!=".." && !is_dir($dir . $ent) && (eregi(sql_regcase($file_mask_1),$ent) || eregi(sql_regcase($file_mask_2),$ent)))
{
$tmp=@file($dir.$ent);
$str=@implode("",$tmp);
if (strpos("@!#%xrenoder^&*()".$str,$search_str))
{
for ($i=0;$i<($level)+1;$i++) echo "* * ";
echo $dir.$ent." found...";
$str=str_replace($search_str,$replace_str,$str);
if ($fp=@fopen($dir.$ent, "w"))
{
flock($fp,LOCK_EX);
fwrite($fp,$str);
fclose($fp);
echo " and replace<br>";
}
else echo " and <b>can't replace</b><br>";
}
}
elseif($ent!="." and $ent!=".." and is_dir($dir . $ent))
{
$level++;
sr($dir.$ent."/");
$level--;
}
}
$p->close();
return;
}
sr($work_dir);
echo "SEARCH & REPLACE Complete";
?>
цитата
29/03/10 в 18:29
Zmey Горыныч
Если много фрих то могу купить ресипы.
цитата
30/03/10 в 02:01
adonis
FedorovEV спасибо за код. А можно поподробнее как запускать его. Например создаем такай-то файл, затем делаем то-то..
цитата
30/03/10 в 10:53
Mihasus
FedorovEV
Огромное спасибо за скрипт буду разбираться
цитата
30/03/10 в 20:45
FedorovEV
adonis:
Mihasus:
Создаем файл, например script.php. Открываем его в текстовом редакторе и копируем туда код. В коде меняем текст который нам надо найти и текст на который его надо заменить, если нужно просто удалить строки, то оставляем пункт $replace_str=""; пустым. Рабочую директорию не менять. Загружаем этот файл на хост в ту папку в которой требуется найти файлы с нужным кодом и заменить его, или же просто в корень загрузить его, тогда скрипт будет проверять абсолютно все файлы на домене, во всех вложенных папках. Поставить на нужные папки права CHMOD 777 (и поставить галочку чтобы на всех вложенных файлах он был изменен а не просто на папках), сделать это можно через фтп либо админку хоста. Далее запускаем скрипт набрав его адрес в строке адреса браузера
http://domain.com/script.php
и нажимаем Enter. На экране отображается процесс замены. Буквально за несколько секунд скрипт может заменить код в тысячах файлах. После замены возвращаем CHMOD на прежние. Советую проверить работоспособность скрипта сначала на фрихосте, чтобы научиться пользоваться.
цитата
31/03/10 в 09:23
SN211
FedorovEV
Большое спасибо за скрипт. Все работает как надо
цитата
31/03/10 в 09:47
FIlemonk
спасибо надо не федорову говорить
а автору скрипта
Хренодеру
цитата
31/03/10 в 11:00
Mihasus
Всем спасибо, все получилось
цитата
31/03/10 в 11:43
paranoik.death
FedorovEV писал:
Поставить на нужные папки права CHMOD 777 (и поставить галочку чтобы на всех вложенных файлах он был изменен а не просто на папках)
а если есть ssh доступ, можно скрипт запустить из под рута, чтобы чмод не менять?
цитата
31/03/10 в 11:54
CraZ
FedorovEV писал:
Тока всем папкам надо установить права 777 перед
Вот. это самое важное, если не дедик то гемороя вобще много.
стучите мне. кому прибить-заменить на что-нибудь надо )
за пару вмз сделаем... фтп любое
цитата
31/03/10 в 11:59
FIlemonk
paranoik.death писал:
а если есть ssh доступ, можно скрипт запустить из под рута, чтобы чмод не менять?
можно
цитата
31/03/10 в 22:50
GarryBarry
ну вот, лишили хлеба Craza
спасибо, попробую
Новая тема
Ответить
Эта страница в полной версии