Steven Haryanto
and 1 contributors


Data::Unixish::pick - Pick one or more random items


version 1.32


In Perl:

 use Data::Unixish::List qw(dux);
 my @pick = dux([pick => {items=>2}], 1..100); # => (52, 33)

In command line:

 % seq 1 100 | dux pick -n 4
 | 18 | 22 |  2 | 24 |


Steven Haryanto <>


This software is copyright (c) 2013 by Steven Haryanto.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.



None are exported by default, but they are exportable.

pick(%args) -> [status, msg, result, meta]

Pick one or more random items.

Arguments ('*' denotes required arguments):

  • in => any

    Input stream (e.g. array or filehandle).

  • items => int (default: 1)

    Number of items to pick.

  • out => any

    Output stream (e.g. array or filehandle).

Return value:

Returns an enveloped result (an array). First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (result) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.