diff options
author | Alexander Sulfrian <alexander@sulfrian.net> | 2013-05-17 00:39:20 +0200 |
---|---|---|
committer | Alexander Sulfrian <alexander@sulfrian.net> | 2013-05-17 00:39:20 +0200 |
commit | b1817bfd9a9a2e755b66b10cf3b74c1145b8f02c (patch) | |
tree | 770f481c217fe9ad5eacc2d6b7db38b82407144f /bin | |
parent | eb92ad715728d54c08abdea7188bcc3df9189270 (diff) | |
download | tools-b1817bfd9a9a2e755b66b10cf3b74c1145b8f02c.tar.gz tools-b1817bfd9a9a2e755b66b10cf3b74c1145b8f02c.tar.bz2 tools-b1817bfd9a9a2e755b66b10cf3b74c1145b8f02c.zip |
Printer: refactor the whole thing, add --verbose flag to show keys with value None
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/hostinfo | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/bin/hostinfo b/bin/hostinfo index 391e7db..5a2a516 100755 --- a/bin/hostinfo +++ b/bin/hostinfo @@ -19,9 +19,9 @@ def _get_data(path): stream = file(path, 'r') return yaml.load(stream) -def print_info(path, key=None, oneline=False): +def print_info(path, key=None, oneline=False, verbose=False): data = _get_data(path) - p = printer.Printer(data, oneline) + p = printer.Printer(data, oneline, verbose) p.info(key) def _print_keys(data, prefix = ''): @@ -71,12 +71,14 @@ def find_host(host): def main(): self_name = sys.argv.pop(0) - optlist, args = getopt.gnu_getopt(sys.argv, 'ofk', ['oneline', 'file', 'keys']) + optlist, args = getopt.gnu_getopt(sys.argv, 'ofkv', + ['oneline', 'file', 'keys', 'verbose']) flags = [opt for (opt, value) in optlist if value == ''] file = '--file' in flags or '-f' in flags oneline = '--oneline' in flags or '-o' in flags keys = '--keys' in flags or '-k' in flags + verbose = '--verbose' in flags or '-v' in flags if len(args) < 1: print('Usage: %s <host> [info]' % self_name) @@ -92,10 +94,11 @@ def main(): elif keys: print_keys(path) else: - if len(args) == 1: - print_info(path, oneline=oneline) - else: - print_info(path, key=args[1], oneline=oneline) + key=None + if len(args) > 1: + key = args[1] + + print_info(path, key=key, oneline=oneline, verbose=verbose) sys.exit(0) if __name__ == '__main__': |