[Поиск] Рандомизатор строк файла

Discussion in 'Болталка' started by AlexV, 9 Jan 2012.

  1. AlexV

    AlexV Elder - Старейшина

    Joined:
    29 Feb 2008
    Messages:
    173
    Likes Received:
    550
    Reputations:
    81
    Приветствую. Необходима программа, которая создаёт файл на основе исходного путём рандомной сортировки строк файла.

    К примеру:

    Файл text1.txt, в нём строки вида:
    Code:
    mail1@domen1.zone:pass1
    mail2@domen2.zone:pass2
    mail3@domen3.zone:pass3
    mail4@domen4.zone:pass4
    mail5@domen5.zone:pass1
    А в конце мне нужно чтобы получился файл:
    Файл text2.txt, в нём строки вида:
    Code:
    mail3@domen3.zone:pass3
    mail5@domen5.zone:pass1
    mail2@domen2.zone:pass2
    mail1@domen1.zone:pass1
    mail4@domen4.zone:pass4
    Чтобы это был софт, и алгоритм рандомизации всегда разный. Буду премного благодарен.

    P.s. Простым языком - перемешивает строки в txt файле. Нужно дать ему на входе файл, на выходе получить файл с тем же содержимым, но рандомизированным на уровне строк.
     
    #1 AlexV, 9 Jan 2012
    Last edited: 10 Jan 2012
  2. AlexV

    AlexV Elder - Старейшина

    Joined:
    29 Feb 2008
    Messages:
    173
    Likes Received:
    550
    Reputations:
    81
    Есть на php:

    PHP:
    <?php 

    $handle 
    = @fopen("1.txt""r"); 
    $buffer = array(); 
    if (
    $handle) { 
        while (!
    feof($handle)) 
        
    array_push($bufferfgets($handle4096)); 
        
    fclose($handle); 

    shuffle($buffer); 

    foreach (
    $buffer as $v) echo "{$v}\r\n"

    ?>
    Минусы: лишние файлы на хосте, нагрузка при обработке больших файлов, нет возможности выбора загрузки файла с компа, и вывод в браузере - затраты времени на копипаст и прочее.

    Нашел еще довольно мощный инструмент, под названием: TextPipe Pro, но больно геморный он в плане юзабельности.

    Поэтому нужен простой софтик, который вначале берет файл text1.txt, рандомно раскидывает строки в файл (text2.txt), и далее возможно сразу указать разбитие на несколько файлов уже рандомизированного текста - text2_1.txt, text2_2.txt, text2_3.txt.
     
  3. 1NtR0

    1NtR0 Elder - Старейшина

    Joined:
    14 Apr 2007
    Messages:
    233
    Likes Received:
    88
    Reputations:
    35
    если для линукса то:
    sort -R file.txt > out.txt
     
  4. AlexV

    AlexV Elder - Старейшина

    Joined:
    29 Feb 2008
    Messages:
    173
    Likes Received:
    550
    Reputations:
    81
    For Windows please. :)
     
  5. k0tt0d

    k0tt0d Member

    Joined:
    19 Nov 2009
    Messages:
    49
    Likes Received:
    20
    Reputations:
    4
    у bvsDupDelet есть такая опция, правда попутно удаляются дубликаты строк.
     
  6. daniel777

    daniel777 Elder - Старейшина

    Joined:
    8 Jul 2010
    Messages:
    517
    Likes Received:
    90
    Reputations:
    37
    Скриптик попроще:)
    PHP:
    <?php

    $f
    =file("1.txt"); //файл который надо перемешать
    shuffle($f);
    $fh=fopen("2.txt""a+"); //в файл 2.txt сохранятся перемешанные строки
    foreach($f as $l){
    fwrite($fh"$l");
    }
    fclose($fh);

    ?>
     
  7. Hixon

    Hixon Member

    Joined:
    17 Apr 2010
    Messages:
    88
    Likes Received:
    9
    Reputations:
    0
    http://zalil.ru/32462433
    Раньше этим пользовался.
     
  8. AlexV

    AlexV Elder - Старейшина

    Joined:
    29 Feb 2008
    Messages:
    173
    Likes Received:
    550
    Reputations:
    81
    А пароль на архив какой? )
     
  9. AlexV

    AlexV Elder - Старейшина

    Joined:
    29 Feb 2008
    Messages:
    173
    Likes Received:
    550
    Reputations:
    81
    Как альтернатива TextPipe Pro, bvsDupDelet.
     
  10. Hixon

    Hixon Member

    Joined:
    17 Apr 2010
    Messages:
    88
    Likes Received:
    9
    Reputations:
    0
    А не знаю :)

    Завтра, если не забуду, кину чистый файл.
     
  11. Hixon

    Hixon Member

    Joined:
    17 Apr 2010
    Messages:
    88
    Likes Received:
    9
    Reputations:
    0
  12. AlexV

    AlexV Elder - Старейшина

    Joined:
    29 Feb 2008
    Messages:
    173
    Likes Received:
    550
    Reputations:
    81