diff options
author | Alexander Sulfrian <alexander@sulfrian.net> | 2013-06-02 22:37:07 +0200 |
---|---|---|
committer | Alexander Sulfrian <alexander@sulfrian.net> | 2013-06-05 19:26:32 +0200 |
commit | 67177a327c7e3cb542561c6b3d5352faab190d7b (patch) | |
tree | 3378f45a905fc72d36c1efce4176377f624f2e37 | |
parent | ad32229c673b9ff01249590d0e042f1f1ba346ed (diff) | |
download | tools-67177a327c7e3cb542561c6b3d5352faab190d7b.tar.gz tools-67177a327c7e3cb542561c6b3d5352faab190d7b.tar.bz2 tools-67177a327c7e3cb542561c6b3d5352faab190d7b.zip |
hostinfo: add filter for matching hosts
With the filter argument only the specified key is printed for all
matching hosts. The filter argument for searches, does work like the
filter argument for normal queries.
-rwxr-xr-x | bin/hostinfo | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/bin/hostinfo b/bin/hostinfo index 0a65443..2270208 100755 --- a/bin/hostinfo +++ b/bin/hostinfo @@ -72,7 +72,7 @@ def match(host, search): return (None, True) return (search, result) -def print_search(basepath, flags, search): +def print_search(basepath, flags, search, filter_key=None): def _get_label(host): if flags.short: return host.replace('.spline.inf.fu-berlin.de','') @@ -95,8 +95,8 @@ def print_search(basepath, flags, search): continue p = printer.Printer(data, flags) - if flags.details: - p.info(None, label=_get_label(host), maxlength=max(length)) + if filter_key is not None flags.details: + p.info(filter_key, label=_get_label(host), maxlength=max(length)) else: if key is None: print(_get_label(host)) @@ -219,7 +219,7 @@ def main(): if args.name.startswith('?'): # search - print_search(basepath, search=args.name, flags=args) + print_search(basepath, search=args.name, filter_key=args.filter, flags=args) else: # info path = find_host(basepath, args.name) |