This program selects a random file from the current directory, including
files in subdirectories. If you like to manage your music collection using
the command line, this program can be used to approximate "shuffle".
More precisely, it starts at the current directory, picks a random entry,
and descends if it is a directory. It does not give more weight to
directories containing more files. It should only fail if there are no
regular files under the current directory that you can see.
If you are wondering why I bothered to use crypto-grade random number
generation, it is because I found System.Random
to be unsatisfactory.
With System.Random
, this program tended to return the same file
repeatedly.
Note: on Unix, this program follows symbolic links, while on Windows, it
doesn't. Symbolic links were introduced in Windows Vista and
Windows Server 2008.