Как перемешать строки в тестовом файле?

HR
На сайте с 17.02.2007
Offline
210
8517

Приветствую.

Сабж - есть текстовый файл с примерно 60к строками теста. Нужно их перемешать в рандомном порядке.

Подскажите какой нибудь сервис для этого или может существует какая-нибудь прога?

D
На сайте с 05.05.2008
Offline
25
#1

вот такой скрипт у меня работает на ура, и с 100к строк :)


<?php
$lines = file('in.txt');
shuffle($lines);
define('FILE_APPEND', 1);
function file_put_contents($n, $d, $flag = false) {
$mode = ($flag == FILE_APPEND || strtoupper($flag) == 'FILE_APPEND') ? 'a' : 'w';
$f = @fopen($n, $mode);
if ($f === false) {
return 0;
} else {
if (is_array($d)) $d = implode($d);
$bytes_written = fwrite($f, $d);
fclose($f);
return $bytes_written;
}
}
file_put_contents('out.txt', implode('', $lines));
/*echo $lines; echo '<br>'; */
?>
HR
На сайте с 17.02.2007
Offline
210
#2

d4rkolian, спасибо :)

-O-O-
На сайте с 27.05.2006
Offline
140
#3

На родном perl'e

#!/usr/bin/perl

open(F, "keys.txt") or die $!;
@keys = <F>;
close(F);


for ($i = @keys; --$i; ) {
$j = int rand ($i+1);
next if $i == $j;
@keys[$i,$j] = @keys[$j,$i];
}

open(F2, ">keys2.txt") or die $!;
print F2 @keys;
close(F2);

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий