Удалить все строки из файла до определённой

ST
На сайте с 13.12.2007
Offline
0
1073

Всем привет.

Помогите мне найти ответ на вопрос:

Есть, к примеру, 10.000 файлов. Нужно в каждом из них удалить всё от начала до определённой строки, которая в каждом из файлов одинаковая, но в самом файле уникальна).

Я думал сделать это с помощью поиска и замены в dreamweaver'е, но насколько понял, регулярное выражение составляется только для одной строки, а у меня их в файлах разное кол-во.

Сейчас объясню на примере. Вот файл-номер1:

sakslfhdjsagfsdf

fzbnlvxkvhsdjgkhsfdes

fdfjkldf

УНИКАЛЬНАЯ СТРОКА

ааываав

папа

авкк

Вот второй:

dsafdgd

rrtryt

УНИКАЛЬНАЯ СТРОКА

fghfjx.

Т.е. файлы имеют разное содержание, но одна строка (как бы метка) одинаковая, и всё что перед ней, нужно удалить (в каждом файле различается и содержанием и кол-ом строк).

Глупо делать это вручную, а автоматизировать процесс не получается. Возможно вообще это сделать посредством DW. Или если нет, то каким образом этого можно добиться?

Заранее спасибо всем, кто откликнется

КМ
На сайте с 08.03.2007
Offline
66
#1

Тоесть, вам это нужно сделать на сервере ?

P.S. Можно сделать любым языком которые работает с файлами.

G
На сайте с 01.10.2007
Offline
16
#2

Вот например код на php, внутри комментарии, заменяет исходные файлы, поэтому лучше попробовать сначала на копиях.

<?php

$unq_string = 'УНИКАЛЬНАЯ СТРОКА';
$files = glob('*.txt'); // маска, по которой будут выбраны файлы
foreach($files as $file) {
$filecontent = file_get_contents($file);
$newcontent = strstr($filecontent, $unq_string);
$newcontent = trim(str_replace($unq_string, '', $newcontent)); // удалите эту строку, если надо, чтобы уникальная строка присутствовала в новом файле
file_put_contents($file, $newcontent);
}
?>

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