terminal search files by text that the file names contain

Solution 1:

sudo find / -type f -name "*deh*"

if you want to search directories too then remove the -type f. You can also try: sudo locate deh

Should your locate database not be created (or up to date), there is a chance you have that file on the filesystem, but it's not been stored yet. Rather than run a single find command above, building the locate.db database might be a better plan going forward.

Solution 2:

The mdfind command can be used to find all indexed files that contain a specific string in the filename.

In your case:

 mdfind -name deh