The following code will create a function in bash that accepts two parameters (1: the place to search in, 2: the value to search for).
You can place it in your ~/.bashrc file to have it available whenever you open a bash shell.
#1. Copy/paste the below lines in your .bashrc
#takes 2 parameters (1: the haystack to search in, 2: the needle)
# Will print out the files and the lines that contain the needle
xfind(){
FIND_VAR="$2";
STACK="$1";
if [ -f "$STACK" ] || [ -d "$STACK" ]; then
find "$STACK" \
-exec grep --color "$FIND_VAR" -sl '{}' \; \
-exec grep "$FIND_VAR" -s '{}' \;
else
echo "ERROR: No file or folder with the name '$STACK' exist";
fi
}
#2. Run source ~/.bashrc -- to reload
Usage examples:
xfind . "bar"; xfind /etc/ "conf";
This post is also available in: Greek


