From 10d94668fc298489160a4884774401fc9da93f63 Mon Sep 17 00:00:00 2001 From: Lars Engels Date: Wed, 15 Mar 2023 15:47:54 +0100 Subject: [PATCH] Re-work "list" command / output and add "search" command. --- usr/local/share/bastille/tags.sh | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/usr/local/share/bastille/tags.sh b/usr/local/share/bastille/tags.sh index 2cb76b7..7f497eb 100644 --- a/usr/local/share/bastille/tags.sh +++ b/usr/local/share/bastille/tags.sh @@ -35,9 +35,11 @@ usage() { error_notify "Usage: bastille tags TARGET add tag1,tag2,..." error_notify " bastille tags TARGET delete tag1,tag2,..." + error_notify " bastille tags TARGET search tag" error_notify " bastille tags TARGET list" echo -e "Example: bastille tags JAILNAME add database,mysql" echo -e " bastille tags JAILNAME delete mysql" + echo -e " bastille tags ALL search mysql" exit 1 } @@ -76,9 +78,20 @@ for _jail in ${JAILS}; do [ ! -s "${bastille_jail_tags}" ] && rm "${bastille_jail_tags}" done ;; + search) + [ -n "$(echo ${TAGS} | grep ,)" ] && usage # Only one tag per query + [ ! -f "${bastille_jail_tags}" ] && continue # skip if there is no tags file + grep -qE "^${TAGS}\$" "${bastille_jail_tags}" + if [ $? -eq 0 ]; then + echo "${_jail}" + continue + fi + ;; list) - [ -f "${bastille_jail_tags}" ] && cat "${bastille_jail_tags}" - continue + if [ -f "${bastille_jail_tags}" ]; then + echo -n "${_jail}: " + xargs < "${bastille_jail_tags}" + fi ;; *) usage