The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Помогите с регулярными выражениями"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Помогите с регулярными выражениями"
Сообщение от Doctorrr emailИскать по авторуВ закладки(ok) on 26-Ноя-04, 16:28  (MSK)
Привет всем!!
Встала вот такая задача:
Веб-сервер, сайт с запутанной структурой и огромным количеством файлов.
Весит ~800Mb, сам черт в нем ногу сломит.

Подскажите пожалуйста, какими средствами во всех файлах можно заменить одно выражение на другое?? Например, одну ссылку на другую??

PS: Найти бы того кто это программил, и заставить менять вручную...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Помогите с регулярными выражениями"
Сообщение от dev emailИскать по авторуВ закладки(??) on 26-Ноя-04, 16:41  (MSK)
find & sed
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Помогите с регулярными выражениями"
Сообщение от Аноним Искать по авторуВ закладки on 26-Ноя-04, 16:43  (MSK)
perl -i.bak -pe 's/this/that/g' filename
и find
  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Помогите с регулярными выражениями"
Сообщение от Doctorrr emailИскать по авторуВ закладки(ok) on 26-Ноя-04, 16:57  (MSK)
>perl -i.bak -pe 's/this/that/g' filename
>и find

За perl -i.bak -pe 's/this/that/g' filename  спасибо, раньше не знал, положил на ум.

А разве find ищет внутри файлов?? Я не нашел такой опции в man'е. Плохо читал??

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

Можно ли топорно сделать perl -i.bak -pe 's/this/that/g' ./* -- ведь файлы, в которых нужного выражения нет, не пострадают??

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Помогите с регулярными выражениями"
Сообщение от Аноним Искать по авторуВ закладки on 27-Ноя-04, 01:42  (MSK)
>А разве find ищет внутри файлов?? Я не нашел такой опции в
>man'е.

-exec или man xargs

find /dir -type f -print0 |xargs -0 perl -i.bak -pe 's/this/that/g'

>У меня не каждый файл содержит регулярное выражение, которое надо заменить. Как
>вычислить те, которые содержат??

grep -rlE 'рег.выр.' /dir

>
>Можно ли топорно сделать perl -i.bak -pe 's/this/that/g' ./* -- ведь файлы,
>в которых нужного выражения нет, не пострадают??

Сделай копию файлов и попробуй, сам все узнаешь.

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру