From d6b210f044b5ad6866170bdb77d5702c5db1b76a Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Tue, 22 Nov 2016 03:30:34 +0300 Subject: add str_invert_match --- %HOME%/.bash_utils/text.sh | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to '%HOME%/.bash_utils/text.sh') diff --git a/%HOME%/.bash_utils/text.sh b/%HOME%/.bash_utils/text.sh index 88118f9..144bc2c 100644 --- a/%HOME%/.bash_utils/text.sh +++ b/%HOME%/.bash_utils/text.sh @@ -184,3 +184,21 @@ str_join() ( ;; esac ) + +str_invert_match() ( + set -o errexit -o nounset -o pipefail + + local -a pattern_list=() + + local pattern + for pattern; do + pattern_list+=('-e' "$pattern") + done + + if [ "${#pattern_list[@]}" -eq 0 ]; then + cat + else + grep --fixed-strings --invert-match \ + ${pattern_list[@]+"${pattern_list[@]}"} + fi +) -- cgit v1.2.3