<<Please no Cygwin, or other *nix style Windows environment suggestions as I dual boot. If it's a Windows command line app, I'm open to installing it for the desired results.>>
#!/bin/bash pls=/tmp/$RANDOM.pls echo "$1" >$pls && find $(dirname "$1") -maxdepth 1 |grep -v "$1" |shuf >>$pls mplayer -playlist $pls rm $pls
I downloaded the Windows 'Intel Nehalem' version of mplayer from here (http://oss.netfarm.i...layer-win32.php) . I extracted the folder into my program files directory, and added the directory to my system path.
Although I've attempted to do it myself, this is the furthest I've gotten, and it has several major flaws.
I:\ chcp 65001 set PLS=%RANDOM% echo %~1 >> %PLS%.pls dir /b /on | findstr /v /i "%~1" >> %PLS%.pls mplayer -playlist %PLS%.pls chcp 437 del *.pls pause
The flaws being...
- 1. I have to hardcode the location of the media files. In the above case 'I:'. I tried using the 'pushd' command, but it opens the location of my batch file, and not the location of the media file used to launch the script.
- 2. I have no clue how to shuffle the order of the lines (ie - the file names) with any of the default Windows command line tools.
- 3. Windows 'dir' command doesn't seem to have a way to omit directory names, so the script ends up trying to play files with those directory name. This prevents me from skipping backwards in the shuffle as it cannot find those file names
- 4. I probably need to use the 'type' command to merge the echoed file name (used to launch script) dumped to playlist 1 followed by a playlist 2 with the '%1' file name omitted as on line 4, but I'm unsure how to do this with the variables. This is so I can have my playlist shuffled, but have the initially launched file play first.