The OpenNET Project / Index page

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

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

"Оригинальный глюк в PERLе"  
Сообщение от Sergey_Green email(ok) on 14-Сен-06, 14:52 
Программа читает построчно огромный файл и некоторые интересные мне строки пишет в другой файл, а глюк в том что она "вылетает" при попытке записи строки номер 7200177 в другой файл, т.е. семь миллионов нормально блин читает и некоторые пишет, а на этой долбанной строчке вылетает, а в другом файле вылетает на 5030521-ой строчке, а некоторые такие же большие файлы вполне нормально читает, и выдёргевает строки.
Посмотрел я эти строки, и они вполне адекватны, меньше 100 байт каждая, тупо буквы латинского алфавита, без символов типа: # $ % ^ & * / | \ и т.п.
Кто-нибуль знает в чём косяк?
Причём вылетает с ошибкой: попытка изменения атрибута чтение/запись.
А запускаю я от root`а.
Алгоритм чтения и записи примерно такой:

while( $line=<ALLMAIL> )
{
  if (условие)
    {
    printf TRESULT $line;
    }
}

Я ваще в шоке, помагите кто знает.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Оригинальный глюк в PERLе"  
Сообщение от ACCA (ok) on 15-Сен-06, 12:06 
>А запускаю я от root`а.
>Алгоритм чтения и записи примерно такой:
>
>while( $line=<ALLMAIL> )
>{
>  if (условие)
>    {
>    printf TRESULT $line;
>    }
>}
>
>Я ваще в шоке, помагите кто знает.

1. Не пускай от root'а разрабатываемую программу
2. Начинай программу с #!/usr/bin/perl -W (ну, или где он там у тебя?)
3. Продолжай use strict;

Программа не должна давать ни одного предупреждения без подавления оных. Когда избавишься ото всех, задай вопрос снова. Скорее всего где-то накосячил с переменными.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "Оригинальный глюк в PERLе"  
Сообщение от Sergey_Green email(ok) on 25-Сен-06, 14:59 
>>А запускаю я от root`а.
>>Алгоритм чтения и записи примерно такой:
>>
>>while( $line=<ALLMAIL> )
>>{
>>  if (условие)
>>    {
>>    printf TRESULT $line;
>>    }
>>}
>>
>>Я ваще в шоке, помагите кто знает.
>
>1. Не пускай от root'а разрабатываемую программу
>2. Начинай программу с #!/usr/bin/perl -W (ну, или где он там у
>тебя?)
>3. Продолжай use strict;
>
>Программа не должна давать ни одного предупреждения без подавления оных. Когда избавишься
>ото всех, задай вопрос снова. Скорее всего где-то накосячил с переменными.
>
////////////////////////////////////////////////////
Спасибо.
Я нашёл собаку зарытую !!!!!
Только понять не могу почему такая хeрнYa/
Надо было не printF а обычный print использовать. Кто-нибудь может объяснить почему с
printF вылетает, а с print нет!?
Я в PERLе чайник китайский, на другом обычно пишу.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

3. "Оригинальный глюк в PERLе"  
Сообщение от chip email(ok) on 29-Сен-06, 16:00 
>>>А запускаю я от root`а.
>>>Алгоритм чтения и записи примерно такой:
>>>
>>>while( $line=<ALLMAIL> )
>>>{
>>>  if (условие)
>>>    {
>>>    printf TRESULT $line;
>>>    }
>>>}
>>>
>>>Я ваще в шоке, помагите кто знает.
>>
>>1. Не пускай от root'а разрабатываемую программу
>>2. Начинай программу с #!/usr/bin/perl -W (ну, или где он там у
>>тебя?)
>>3. Продолжай use strict;
>>
>>Программа не должна давать ни одного предупреждения без подавления оных. Когда избавишься
>>ото всех, задай вопрос снова. Скорее всего где-то накосячил с переменными.
>>
>////////////////////////////////////////////////////
>Спасибо.
>Я нашёл собаку зарытую !!!!!
>Только понять не могу почему такая хeрнYa/
>Надо было не printF а обычный print использовать. Кто-нибудь может объяснить почему

>printF вылетает, а с print нет!?
>Я в PERLе чайник китайский, на другом обычно пишу.

Элементарно Ватсон. Матчасть нужно знать. Сколько уже сервисов из-за таких писателей полегло. Формат printf:
printf(FILEHANDLE FORMAT, LIST)

и никак не
printf(FILEHANDLE, LIST)

Далее ищем в www.google.com /printf vulnerability

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




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

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