Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Файл читается не до конца 
:(
    Опции темы
Suppir
Дата 12.2.2013, 09:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 20.4.2009

Репутация: нет
Всего: нет



Добрый день!

Почему файл может читаться не до конца? Код примерно следующий


Код


while(<*.sub>){
    open(IN, $_);
    while(<IN>){
        if (/spb/i){push(@spb, $_); next}
    }
    close IN;
}

open (OU, ">filtered.log");
foreach  $x(@spb){print OU "$x"}    



На определенной строке (точней, на ее середине) чтение файла обрывается. То есть в filtered.log попадает только часть строк. 
PM MAIL   Вверх
Suppir
Дата 12.2.2013, 09:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 20.4.2009

Репутация: нет
Всего: нет



Я понял, почему так происходит.

Я пытаюсь прочитать файл (через IN), который только что записал. Несмотря на то я предварительно закрыл дескриптор того файла, он еще не весь записался на диск. 
PM MAIL   Вверх
arto
Дата 12.2.2013, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



а что за система?
при close гарантируется, что буферы будут скинуты на диск.
или smb/nfs какой?
PM MAIL ICQ   Вверх
Suppir
Дата 12.2.2013, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 20.4.2009

Репутация: нет
Всего: нет



Windows 7, 32 bit, professional.

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

smb/nfs - не знаю. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1068 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.