diff options
Diffstat (limited to '%HOME%/.bash_utils')
-rw-r--r-- | %HOME%/.bash_utils/text.sh | 18 |
1 files changed, 18 insertions, 0 deletions
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 +) |