LINUX.ORG.RU

Сообщения Lefeofan

 

Регулярное выражение для замены текста в файлах .php

Форум — Admin

Сабж.

Есть виртуальный сервер на дебиане, на нём хостятся сайты. Есть региональная сетка сайтов на поддоменах типа: abakan, tula, novosibirsk и так далее. В каждой папке есть файл типа index.php. Надо заменить кусок определенного кода на название папки. То есть

//$sql = "SELECT * FROM `TABLE 1` WHERE `translit` = 'novosibirsk'";
$sql = "SELECT * FROM `TABLE 1` WHERE `translit` = 'moscow'";
$res = $mysqli->query($sql);
$row = $res->fetch_assoc();
//var_dump($row);
mysqli_close($mysqli); 

заменить на

//$sql = "SELECT * FROM `TABLE 1` WHERE `translit` = 'novosibirsk'";
$sql = "SELECT * FROM `TABLE 1` WHERE `translit` = 'abakan'";
$res = $mysqli->query($sql);
$row = $res->fetch_assoc();
//var_dump($row);
mysqli_close($mysqli);

если папка с файлом называется abakan

Если есть способ сделать это не на сервере, а скажем на винде, с помощью программы, то же буду благодарен за мануал. Попытался разобраться с TextPipe, но не нашёл нужного фильтра. Приму любую помощь, что бы разобраться с этой задачей. Спасибо.

 , ,

Lefeofan
()

sed: как вывести информацию между двумя словами

Форум — Development

Здравствуйте. Разбираюсь с sed, споткнулся об синтаксис. Парсю в файл get запросом с сайта, мне вываливается информация, надо из неё выбрать определенное значение между двумя словами. Пытаюсь делать через sed.

 info=$(sed 's/слово1"\(.*\)слово2/\//' file.txt) 

Но строка длинная, и слова находятся не по краям, поэтому мне выдается всё кроме этих двух слов. Как получить изолировано только то что между этими словами? Например, вот текст например

 {"id":3876,"form":"index","time":21,"data":"2529423","service":"Atere","response":"WAIT"} 

Как из него вычленить только то что между «data» и «service». Man читаю, но не выходит.

 ,

Lefeofan
()

RSS подписка на новые темы