find /dir/to/search -type f \( -iname "file-to-serach" ! -iname ".*" \)
# find all files but ignore . dot files in $HOME
find $HOME -type f \( -iname "*" ! -iname ".*" \)
# Look for all *.cpp files but ignore all .dot files in /app/
find $HOME -type f \( -iname "*" ! -iname ".*" \)
# Do not apply any tests or actions at levels less than levels (a non-negative integer). -mindepth 1 means process all files except the starting-points
find $HOME -mindepth 1 -type f \( -iname "*" ! -iname ".*" \)
# Descend at most levels (a non-negative integer) levels of directories below the starting-points. -maxdepth 0 means only apply the tests and actions to the starting-points themselves.
find $HOME -maxdepth 0 -type f \( -iname "*" ! -iname ".*" \)