| SHUFFLE(1) | General Commands Manual | SHUFFLE(1) | 
shuffle —
| shuffle | [ -0] [-ffilename ...] [-nnumber] [-pnumber] [arg]
      [...] | 
shuffle program prints a random permutation (or
  “shuffle”) of its command line arguments. This can be useful in
  shell scripts for selecting a random order in which to do a set of tasks, view
  a set of files, etc.
If the -f option is given, the data is
    taken from that files' contents or if the filename is
    - “stdin”.
If the -n option is given, its argument is
    treated as a number, and the program prints a random permutation of the
    numbers greater than or equal to 0 and less than the argument.
If the -p option is given, its argument is
    treated as a number, and the program prints that number of randomly selected
    lines or arguments in a random order.
The -0 option changes the field separator
    character from \n to \0, so that the output is suitable to be sent to
    xargs(1) (to handle filenames
    with whitespace in them).
$ shuffle a b c d c b d a $ shuffle -p 1 a b c d d $ shuffle -n 4 -p 2 0 3
shuffle program first appeared in
  NetBSD 1.4.
| February 18, 2009 | NetBSD 10.0 |