App-durseq

 view release on metacpan or  search on metacpan

script/durseq  view on Meta::CPAN


Generate durations from P10D to P0D (reverse):

 % durseq P10D P0D -r
 P10D
 P9D
 ... 7 more lines ...
 P1D
 PT0H0M0S

Generate 10 durations from P1M (increment 1 week):

 % durseq P1M -i P1W -n 10
 P1M
 P1M7D
 ... 6 more lines ...
 P1M56D
 P1M63D

=head1 DESCRIPTION

This utility is similar to Perl script L<dateseq>, except that it generates
a sequence of durations instead of dates.

=head1 OPTIONS

C<*> marks required options.

=head2 Main options

=over

=item B<--from>=I<s>

Starting duration.

=item B<--increment>=I<s>, B<-i>

Increment, default is one day (P1D).

=item B<--limit>=I<s>, B<-n>

Only generate a certain amount of items.

=item B<--reverse>, B<-r>

Decrement instead of increment.

=item B<--to>=I<s>

Ending duration, if not specified will generate an infinite* stream of durations.

=back

=head2 Formatting options

=over

=item B<--format-class-attrs-json>=I<s>

Arguments to pass to constructor of DateTime::Format::* class (JSON-encoded).

See C<--format-class-attrs>.

=item B<--format-class-attrs>=I<s>

Arguments to pass to constructor of DateTime::Format::* class.

=item B<--format-class>=I<s>

Use a DateTime::Format::Duration::* class for formatting.

Default value:

 "ISO8601"

By default, "ISO8601" (<pm:DateTime::Format::Duration::ISO8601>) is used.


=back

=head2 Output options

=over

=item B<--format>=I<s>

Choose output format, e.g. json, text.

Default value:

 undef

=item B<--json>

Set output format to json.

=item B<--naked-res>

When outputing as JSON, strip result envelope.

Default value:

 0

By default, when outputing as JSON, the full enveloped result is returned, e.g.:

    [200,"OK",[1,2,3],{"func.extra"=>4}]

The reason is so you can get the status (1st element), status message (2nd
element) as well as result metadata/extra result (4th element) instead of just
the result (3rd element). However, sometimes you want just the result, e.g. when
you want to pipe the result for more post-processing. In this case you can use
`--naked-res` so you just get:

    [1,2,3]


=back

=head2 Other options

=over

=item B<--help>, B<-h>, B<-?>

Display help message and exit.

=item B<--version>, B<-v>

Display program's version and exit.

=back

=head1 COMPLETION

This script has shell tab completion capability with support for several



( run in 0.665 second using v1.01-cache-2.11-cpan-0bb4e1dffa6 )