summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2013-06-02 22:37:07 +0200
committerAlexander Sulfrian <alexander@sulfrian.net>2013-06-05 19:26:32 +0200
commit67177a327c7e3cb542561c6b3d5352faab190d7b (patch)
tree3378f45a905fc72d36c1efce4176377f624f2e37
parentad32229c673b9ff01249590d0e042f1f1ba346ed (diff)
downloadtools-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-xbin/hostinfo8
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)