summaryrefslogtreecommitdiff
path: root/source4/scripting/python
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2010-11-28 10:52:09 +1100
committerAndrew Tridgell <tridge@samba.org>2010-11-28 01:56:46 +0100
commit60bf020394f5006dc343a8477c7621ca00f7ce88 (patch)
tree38dc56c0dacf8caac5925ad657960e531a559110 /source4/scripting/python
parent2a4c6da7835cb6129a68e3e6e6c16e8f0a656eb2 (diff)
downloadsamba-60bf020394f5006dc343a8477c7621ca00f7ce88.tar.gz
samba-60bf020394f5006dc343a8477c7621ca00f7ce88.tar.bz2
samba-60bf020394f5006dc343a8477c7621ca00f7ce88.zip
s4-samba-tool: support help, and show description of commands
when you don't specify a subcommand, show the description of the subcommands in the list of available subcommands. Also show the list of subcommands when you use 'help', '--help' or '-h' as a subcommand Autobuild-User: Andrew Tridgell <tridge@samba.org> Autobuild-Date: Sun Nov 28 01:56:46 CET 2010 on sn-devel-104
Diffstat (limited to 'source4/scripting/python')
-rw-r--r--source4/scripting/python/samba/netcmd/__init__.py14
1 files changed, 7 insertions, 7 deletions
diff --git a/source4/scripting/python/samba/netcmd/__init__.py b/source4/scripting/python/samba/netcmd/__init__.py
index dafdd77c87..af317ab7e0 100644
--- a/source4/scripting/python/samba/netcmd/__init__.py
+++ b/source4/scripting/python/samba/netcmd/__init__.py
@@ -112,14 +112,14 @@ class SuperCommand(Command):
subcommands = {}
def _run(self, myname, subcommand=None, *args):
- if subcommand is None:
- print "Available subcommands:"
- for subcommand in self.subcommands:
- print "\t%s" % subcommand
+ if subcommand in self.subcommands:
+ return self.subcommands[subcommand]._run(subcommand, *args)
+ print "Available subcommands:"
+ for cmd in self.subcommands:
+ print "\t%-20s - %s" % (cmd, self.subcommands[cmd].description)
+ if subcommand in [None, 'help', '-h', '--help' ]:
return 0
- if not subcommand in self.subcommands:
- raise CommandError("No such subcommand '%s'" % subcommand)
- return self.subcommands[subcommand]._run(subcommand, *args)
+ raise CommandError("No such subcommand '%s'" % subcommand)
def usage(self, myname, subcommand=None, *args):
if subcommand is None or not subcommand in self.subcommands: