aboutsummaryrefslogtreecommitdiff
path: root/bash/bashrc.d/grep.bash
blob: e5a568e1dd95bd427d7785ce21f3117dfdd956e9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# Function returns calculated options for grep
function __grepopts {
    local grepopts='-I'
    local grephelp=$(grep --help)
    echo $grephelp | grep -- --color &>/dev/null \
        && grepopts="${grepopts} --color=auto"
    echo $grephelp | grep -- --exclude &>/dev/null \
        && grepopts="${grepopts} --exclude=.git{,ignore,modules}"
    echo $grephelp | grep -- --exclude-dir &>/dev/null \
        && grepopts="${grepopts} --exclude-dir=.{cvs,git,hg,svn}"
    echo $grepopts
}

# Alias grep with those options
alias grep="grep $(__grepopts)"

# Unset helper function
unset __grepopts