1: #!/usr/bin/perl 2: # Plays a random file from $dir using $player. 3: # I still have not figured a good way to quit other than killing 4: # the perl program and then the player, anybody have some good ideas? 5: # UPDATE: now properly replaces escape characters (old version replaced with space) 6: use strict; 7: my $dir = "/dosc/Music/"; 8: my $player ="mpg123"; 9: my ($i, @music); 10: opendir (DIR, $dir); 11: @music = readdir (DIR); 12: closedir (DIR); 13: foreach (@music) { 14: s/([\s|&|\\|\||(|)|'|_])/\\$1/g; # Add escape characters 15: } 16: srand(); 17: while (1) 18: { 19: $i = @music[int(rand(scalar(@music)))]; 20: system "$player $dir$i"; 21: }
Back to
Craft