Mplayer Shuffle Command: Play Files In Random Order

by on October 1, 2011 · 18 comments· LAST UPDATED October 1, 2011


How do I play files in random order using the mplayer command line player under Linux / Unix operating systems?

You can play most files such as MPEG/VOB, AVI, ASF/WMA/WMV, RM, QT/MOV/MP4, Ogg/OGM, MKV, VIVO, FLI, NuppelVideo, yuv4mpeg, FILM and RoQ files in random order using the following command syntax:

mplayer -shuffle -playlist YOUR-PLAY-LIST-HERE

How Do I Generate a Playlist?

mplayer can play files according to a playlist file type such as ASX, Winamp, SMIL, or one-file-per-line format. You can use the find command to generate a playlist for mplayer:
$ cd /path/to/music/dir
$ find -type f -iname \*.mp3 > playlist.txt

mplayer Shuffle Mode Command

Type the following command:
$ mplayer -shuffle -playlist playlist.txt

Tweet itFacebook itG+ itDownload PDF versionFound an error/typo on this page?

{ 18 comments… read them below or add one }

1 Dougle October 2, 2011 at 2:36 pm

Hey look! it’s the bottom of the barrel! I wondered when we would run out of linux commands.


2 collin October 10, 2011 at 7:50 pm

Open a terminal and cd to the directory that has the music files you want to play. next type “mplayer *.*” press enter. Enjoy!!!!


3 ari November 4, 2011 at 6:50 am

Now, what if i want to skip to the next song? what is the shortcut?


4 ari November 4, 2011 at 6:56 am

no problem, press enter will bring me to the next song.
Thank you :D


5 nixCraft November 4, 2011 at 9:26 am

You can also press > and <


6 Dinesh Mali December 12, 2011 at 6:30 pm

Great tips!! Thanks for this beautiful post


7 joshua January 3, 2012 at 9:13 am

how do I enqueue another song while one is already playing?


8 Leo June 24, 2012 at 4:35 pm

If only I had found this post earlier…
Great post! Thanks!


9 donatom July 7, 2012 at 6:01 pm


I have been wondering how to do what you so wonderfully explained for many years!
Thanks for your help — and thanks for helping the whole Linux/Gnu community!


10 know all October 22, 2012 at 2:54 pm

‘mplayer *’ will do. Perhaps *.* is a relic from dos times :)


11 Joshua October 23, 2012 at 12:37 am

relic, lol, I miss dos.. Found another one tho! mplayer */* for your whole collection, it will do all in this directory, and all in one directory down.. I’ve also used mplayer */*/* to play two folders down.. =]


12 PJ Brunet January 8, 2013 at 6:49 pm

I bet there’s a way to do this without making a playlist.


13 Anonymous March 30, 2013 at 3:08 am

Seems to work with regular filelists, e.g. mplayer -shuffle * will play files in the current directory in a random order.


14 PJ Brunet March 30, 2013 at 7:22 pm

Thanks Anonymous, that works for me!


15 un July 5, 2014 at 10:25 pm

i am actually almost disturbed at the amount of people praising this advice.
so, on the one hand you have this simple idea of composing a command for terminal, BUT then you HAVE TO THEN ADD THE WHOLE BLOODY PLAYL;IST THAT YOU HAVE ALREADY GOT IN YOUR PLAYER?
how impractical and long winded is that?
stupid idea. really dumb.
and to cut a long story short:
WHERE IS THE BLOODY RANDOM/SHUFFLE BUTTON? (like any sensible decently designed player has)


16 Joshua July 7, 2014 at 5:12 am

not our server at work, no GUI.. plus on top of that, each employee has their own music folder, so depending on who’s working, is who has control over the music server via SSH.. so no buttons, except the ones at the keyboard, and no mouse control.. period..


17 Joshua July 7, 2014 at 5:17 am

but it’s cool man, we let it slide for noobs around here; because, everyone “praising” this post, can tell that you’ve never used a terminal before.


18 Lindylex February 4, 2015 at 8:33 pm

This should work also.
mplayer -shuffle -loop 0 *.mp3


Leave a Comment

Tagged as: , , , , , , , , , , , , , , , , , ,

Previous Faq:

Next Faq: