aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/%HOME%/.bash_utils
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--%HOME%/.bash_utils/text.sh18
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
+)