use strict; use warnings; use autodie; my $input = 'D:/Some/Specific/Path/To/Input.CSV'; my $output = 'D:/Some/Specific/Path/To/Output.CSV'; open IN,$input; binmode(IN); open OUT,'>'.$output; my $count = 0; my @vk; my %seen; while (my $line = ) { chomp $line; next if $. < 2; (undef, my $vk) = split ";" , $line; push (@vk,$vk) unless $seen{$vk}++; } close IN; for my $vk (@vk) { if ($count != 10) { print OUT $vk.';'; ++ $count; } else { print OUT "\n"; $count = 0; } } close OUT; exit 0;