Вопрос для линуксоидов:
На серваке имеется порядка 10Гб текстовых файлов, в папках и подпапках.
Нужна прога, которая пробежится по всем этим файлам, и выдернет только урлы.
На локалке под виндой я для этих целей использую Text Pipe. Но надоедает эти гигабайты скачивать, хотелось бы прямо на сервере собрать урлы.
Посоветуйте софтину, ведь наверняка должно быть что-то.
- 08.09.2009 02:16
- 08.09.2009 02:32Senior Member

- Регистрация: 03.09.2009
- Сообщений: 100
- Репутация: 10
надо писать скрипт на BASH
- 08.09.2009 02:36
Да на PHP написать скриптик по-быстрому и на ночь поставить :)
- 08.09.2009 03:02
Накатал небольшой скриптец. PHP-CLI рулит

PHP код:#!/usr/local/bin/php -q
<?php
$start_dir = '/usr/local/apache/htdocs/xxx.com/www/test2/files/' ;
$links = 'links.txt' ;
$pattern = "/http:\/\/(www\.)?([^.]+\.[^.\s]+\.?[^.\s]*)/i";
echo get_links( $start_dir ) ;
function get_links( $start_dir )
{
global $pattern, $links;
$dir = opendir( $start_dir ) ;
while ( $file = readdir( $dir ) )
{
if ( $file == '.' || $file == '..' )
continue ;
if ( is_dir( $start_dir . '/' . $file ) )
get_links( $start_dir . '/' . $file ) ;
else if ( is_file( $start_dir . '/' . $file ) )
{
$content = file_get_contents( $start_dir . '/' . $file ) ;
if ( preg_match( $pattern, $content, $match ) )
{
file_put_contents( $links, file_get_contents( $links ) . PHP_EOL . $match[0] ) ;
}
}
}
}
?>
Как запустить:
1) Проверь путь до PHP-интерпретатора в первой строчке, такой ли у тебя.
2) В файл index.php записть весь исходник.
3) Сделать "chmod +x index.php"
4) сделать links.txt, ему "chmod 777 links.txt"
5) в скрипте index.php пропиши путь до папки, где лежат файлы - $start_dir, они будут парситься с этой папки рекурсивно по всем вложенным папкам.
Удачи
- 08.09.2009 04:27Member

- Регистрация: 05.09.2009
- Сообщений: 37
- Репутация: 10
Можно на пёрле скрипт использовать,который будет выдёгивать ссылки,используя регулярные выражения)
- 08.09.2009 10:07
24110
Вау! Спасибо огромное, затестю, потом отпишу в личку, возможно попрошу слегка доработать скрипт, за небольшое вознаграждение
- 08.09.2009 15:42
Dr.Gonzo, не вопрос - обращайетсь
Поможем, чем сможем :) - 08.09.2009 16:17Опытный

- Регистрация: 04.09.2009
- Сообщений: 288
- Репутация: 11
А для каких целей это поделитесь? А то д меня не как не доходит.
- 08.09.2009 16:19Junior Member

- Регистрация: 08.09.2009
- Сообщений: 20
- Репутация: 10
- 08.09.2009 16:40
Тэги топика:
Похожие темы
| Темы | Раздел | Ответов | Последний пост |
|---|---|---|---|
Создание платных файлов программой zipus.ru | Партнерские программы | 3 | 17.03.2010 06:48 |
Учим php+js: Загрузка файлов в стиле AJAX | Дайджест блогосферы | 0 | 23.12.2009 17:58 |
Какой секрет редирект урлы? | 10 | 30.09.2009 08:59 |



