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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> скопировать файл 
:(
    Опции темы
n0xi0uzz
Дата 14.4.2005, 06:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



как можно скопировать файл, используя стандартные функции перла, не используя системных вызовов?
PM MAIL WWW ICQ   Вверх
chaos
Дата 14.4.2005, 06:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


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

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



ну вот тебе стандартный пример:
Код

#!/usr/bin/perl -w              #это думаю понятно что
use strict;                           #заставляем все перменные описывать через my

my ($INFILE, $OUTFILE) = ('in.txt','out.txt'); #имя входного и выходного

#открываем копируемый файл
open (FO, "<$OUTFILE") || die; 
#открываем файл в каторый будем копировать
open (FI, ">$INFILE") || die;     

#необходимо для копирования не текстовых файлов
binmode FI;
binmode FO;

#непосредственно цикл копирования
print FI $_ while(<FO>);

#закрываем файлы
close(FI);
close(FO);

Добавлено @ 06:58
вот еще можно использовать такой пример:
Код

#!/usr/bin/perl -w
use strict;

use File::Copy;

my ($INFILE, $OUTFILE) = ('in.txt','out.txt');
copy($OUTFILE, $INFILE);



Выбирай что больше нравится smile

Это сообщение отредактировал(а) chaos - 14.4.2005, 07:09
PM WWW   Вверх
n0xi0uzz
Дата 14.4.2005, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Спасибо, больше нравится первый вариант - он... эммм... стандартнее, что ли smile.
Вопрос: зачем заставлять все переменные описывать через my?
PM MAIL WWW ICQ   Вверх
Kiber_rat
Дата 14.4.2005, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MACMANIAC
**


Профиль
Группа: Участник
Сообщений: 276
Регистрация: 18.4.2002
Где: Ashdod, Israel

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



Что бы они не были глобальными. Этого объявления требует использование use strict; Чем черевато использование глобальных переменных можно почитать на любом сайте для скрипткиддисов smile


--------------------
Best regards!                                                             
@..@_____Ku6ep
=*=______\______KPbIC
Код
print join "",map{chr}(split/(\w{2})/,hex(int(2175.57302796298**2)))
PM WWW ICQ Skype Jabber YIM   Вверх
chaos
Дата 14.5.2005, 06:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


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

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



еще в голову пришел один пример)))
Код

#!/usr/bin/perl -w
use strict;

my($INFILE, $OUTFILE) = ("file_in", "file_out");

open(OUTF, "$OUTFILE") || die;
binmode OUTF;

open(INF, ">$INFILE") || die;
binmode INF;

print INF <OUTF>;

close(OUTF);
close(INF);


можно использовать для файлов не большого размера

Это сообщение отредактировал(а) chaos - 14.5.2005, 06:20
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: Системное программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к системному программированию на Perl
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


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

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


 




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


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

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