Bash Function to print out the files and the lines that contain a needle
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";