App::CLI::Command(3) User Contributed Perl Documentation App::CLI::Command(3)

App::CLI::Command - Base class for App::CLI commands

package MyApp::List;
use base qw(App::CLI::Command);
use constant options => (
    'verbose'   => 'verbose',
    'n|name=s'  => 'name',
sub run {
    my ( $self, $arg ) = @_;
    print "verbose" if $self->{verbose};
    my $name = $self->{name}; # get arg following long option --name
    # anything you want this command do
# See App::CLI for information of how to invoke (sub)command.


return old genre subcommand of $self;


Return instance of cascading subcommand invoked if it was listed in your constant subcommands.


Return package name of subcommand if the subcommand invoked is in your constant subcommands, otherwise, return "undef".


Return the object referring to the current app.

brief_usage ($file)

Display a one-line brief usage of the command object. Optionally, a file could be given to extract the usage from the POD.

usage ($want_detail)

Display usage. If $want_detail is true, the "DESCRIPTION" section is displayed as well.

loc_text $text

Localizes the body of (formatted) text in $text and returns the localized version.


Return the filename for the command module.

App::CLI, Getopt::Long

Chia-liang Kao <>

Cornelius Lin <>

Shelling <>

Paul Cochrane <> (current maintainer)

Copyright 2005-2006 by Chia-liang Kao <>.

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


2023-07-25 perl v5.38.0