Unsort functie, bestaat die?

Pagina: 1
Acties:

  • ge-flopt
  • Registratie: Februari 2001
  • Laatst online: 13:28
Hoi,

Ik heb net, na veel geklooi, dekagen aan de gang gekregen om cd's te rippen en om te zetten in MP3. Per puur toeval, kwam ik op een scripje waarmee je een playlist kunt maken en meteen afspelen met freeamp. Dit gaat allemaal perfect alleen in freeamp zit geen shuffle functie via command line. Nu heb ik me de laatste twee uur wezenloos gezocht naar een functie/commando/programma onder bash wat juist niet sorteerd maar door elkaar gooit. Helaas... Niets gevonden.
Weet iemand iets waar ik dus een plain text file de regels doorelkaar kan gooien?

  • Kees
  • Registratie: Juni 1999
  • Laatst online: 13:35

Kees

Serveradmin / BOFH / DoC
Helaas.. maar wat je zou kunnen doen denk ik, is een batchfile schrijven die een willekeurige regel uitleest uit die file, vervolgens freeamp die laat afspelen en zodra hij afgelopen is een volgende willekeurige regel pakt.

man ln
http://www.tldp.org/LDP/abs/html/randomvar.html#EX21

eventueel kun je daar zelfs een lange lijst van maken en dan die laten afspelen, maar dan heb je gegarandeerd dubbele en missende entries.

"Een serveradmin, voluit een serveradministrator, is dan weer een slavenbeheerder oftewel een slavendrijver" - Rataplan


  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 17-05 14:06

deadinspace

The what goes where now?

Het programmaatje "bogosort" kan zoiets:
code:
1
2
3
4
5
6
7
8
[marcelm@nothing marcelm]$ echo -e '1\n2\n3' | bogosort -n
1
3
2
[marcelm@nothing marcelm]$ echo -e '1\n2\n3' | bogosort -n
3
1
2

Hij randomized alleen niet altijd helemaal... Twee of drie keer erdoorheen pipen kan geen kwaad. Als je betere randomheid wil zul je beter progje moeten zoeken of ff zelf een progje in elkaar moeten knutselen.

  • ge-flopt
  • Registratie: Februari 2001
  • Laatst online: 13:28
deadinspace, dit is precies wat ik zoek, mijn lijst met mp3's is nog niet zo lang dus daarom krijg ik allemaal dubbele (verschillende nummers,van dezelfde band bedoel ik dan) maar dat komt allemaal goed!

Verwijderd

ge-flopt schreef op 13 september 2002 @ 00:18:
Weet iemand iets waar ik dus een plain text file de regels doorelkaar kan gooien?
Speciaal voor jouw, uit mijn Perl-truuken doos:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/usr/bin/perl

my @lines;
my $numlines;

while (<>) {
  push @lines,$_;
  $numlines++;
}

srand();

while ($numlines>0) {
        $_=splice (@lines,rand($numlines),1);$numlines--;
        print;
}