aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bash/bashrc.d/grep.bash35
-rw-r--r--sh/profile.d/grep.sh29
2 files changed, 35 insertions, 29 deletions
diff --git a/bash/bashrc.d/grep.bash b/bash/bashrc.d/grep.bash
index be201741..a242603d 100644
--- a/bash/bashrc.d/grep.bash
+++ b/bash/bashrc.d/grep.bash
@@ -1,3 +1,38 @@
+# Store grep(1)'s --help output in a variable
+grep_help=$(grep --help 2>/dev/null)
+
+# Use GREP_OPTIONS to add some useful options to grep(1) calls if applicable
+GREP_OPTIONS=
+case $grep_help in
+ *--binary-files*)
+ GREP_OPTIONS=${GREP_OPTIONS:+$GREP_OPTIONS }'--binary-files=without-match'
+ ;;
+esac
+case $grep_help in
+ *--exclude*)
+ for exclude in .gitignore .gitmodules ; do
+ GREP_OPTIONS=${GREP_OPTIONS:+$GREP_OPTIONS }'--exclude='$exclude
+ done
+ unset -v exclude
+ ;;
+esac
+case $grep_help in
+ *--exclude-dir*)
+ for exclude_dir in .cvs .git .hg .svn ; do
+ GREP_OPTIONS=${GREP_OPTIONS:+$GREP_OPTIONS }'--exclude-dir='$exclude_dir
+ done
+ unset -v exclude_dir
+ ;;
+esac
+
+# We're done parsing grep(1)'s --help output now
+unset -v grep_help
+
+# Export the grep(1) options if we decided on any
+if [ -n "$GREP_OPTIONS" ] ; then
+ export GREP_OPTIONS
+fi
+
# Define function wrapper for grep(1) with --color option if GREP_COLORS is
# set; checks that color is available in the terminal within the function
if [[ ! -n $GREP_COLORS ]] ; then
diff --git a/sh/profile.d/grep.sh b/sh/profile.d/grep.sh
index 444adb16..bcdb009e 100644
--- a/sh/profile.d/grep.sh
+++ b/sh/profile.d/grep.sh
@@ -9,35 +9,6 @@ case $grep_help in
;;
esac
-# Use GREP_OPTIONS to add some useful options to grep(1) calls if applicable
-GREP_OPTIONS=
-case $grep_help in
- *--binary-files*)
- GREP_OPTIONS=${GREP_OPTIONS:+$GREP_OPTIONS }'--binary-files=without-match'
- ;;
-esac
-case $grep_help in
- *--exclude*)
- for exclude in .gitignore .gitmodules ; do
- GREP_OPTIONS=${GREP_OPTIONS:+$GREP_OPTIONS }'--exclude='$exclude
- done
- unset -v exclude
- ;;
-esac
-case $grep_help in
- *--exclude-dir*)
- for exclude_dir in .cvs .git .hg .svn ; do
- GREP_OPTIONS=${GREP_OPTIONS:+$GREP_OPTIONS }'--exclude-dir='$exclude_dir
- done
- unset -v exclude_dir
- ;;
-esac
-
# We're done parsing grep(1)'s --help output now
unset -v grep_help
-# Export the grep(1) options if we decided on any
-if [ -n "$GREP_OPTIONS" ] ; then
- export GREP_OPTIONS
-fi
-