Allow negation search - dossier - console collection manager DIR Log DIR Files DIR Refs DIR Tags DIR README DIR LICENSE --- DIR commit 43ed14f30d8302ad4a67b65efbb8848f1d24f351 DIR parent b6583085207359ec2bb24ae9886b28c43893e867 HTML Author: Solene Rapenne <solene@perso.pw> Date: Sat, 4 Aug 2018 15:49:50 +0200 Allow negation search Diffstat: M dossier | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) --- DIR diff --git a/dossier b/dossier @@ -203,6 +203,12 @@ search_value() { while [ "$#" -gt 1 ] do ATTRIBUTE="$1" + NEGATE="" + if [ "${ATTRIBUTE#!}" -ne "${ATTRIBUTE}" ] + then + ATTRIBUTE="${ATTRIBUTE#!}" + NEGATE=v + fi VALUE="$2" shift 2 if [ ! -d "$ATTRIBUTE" ] @@ -210,7 +216,7 @@ search_value() { printf 'The attribute %s do not exists\n' "$ATTRIBUTE" exit 5 fi - grep -rl "$VALUE" "$ATTRIBUTE" | cut -d '/' -f 2 >> "$RESULT" + grep "-rl${NEGATE}" "$VALUE" "$ATTRIBUTE" | cut -d '/' -f 2 >> "$RESULT" COUNT=$(( COUNT + 1 )) done sort "$RESULT" | uniq -c | \