URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9595
[ Назад ]

Исходное сообщение
"разделить файл"

Отправлено romiks , 07-Дек-12 18:36 
Приветствую всех.

Есть файл. Содержит ip адреса.
192.168.1.138
192.168.1.139
192.168.1.41
192.168.1.64
192.168.10.29
192.168.10.3
192.168.10.68
192.168.11.173

По одному адресу в каждой строке.
Количество строк в файле может быть всякий раз разным.
Нужно на perl разделить файл на части.
Количество частей может быть 2, 3, 4 и т.д.

Если делить на 2 части, то первую строку в 1 файл, вторую строку - во 2 файл,
третью строку снова в 1 файл, четвертую опять во 2 файл и т.д.

Если делить на 3 части, то соответственно:
1 строку - в 1 файл, 2 строку - во 2 файл, 3 строку - в 3 файл
4 строку - в 1 файл, 5 строку - во 2 файл, 6 строку - в 3 файл

И так до конца файла.

подскажите, как это реализовать?


Содержание

Сообщения в этом обсуждении
"разделить файл"
Отправлено pavlinux , 07-Дек-12 19:23 
> подскажите, как это реализовать?

деление по модулю



"разделить файл"
Отправлено romiks , 07-Дек-12 20:41 
>> подскажите, как это реализовать?
> деление по модулю

$i=0;
$n=2;
while(<>){
   chomp;
   `echo '$_' >>$i`;
   $i=($i+1) % $n;
}

кажись догоняю ))


"разделить файл"
Отправлено pavlinux , 10-Дек-12 01:47 
>>> подскажите, как это реализовать?
>> деление по модулю
> кажись догоняю ))

$i = ($i+1) % $n;

Да, да, да, именно так.