I’ve been a desktop Linux-based OS user since 2016 and yet I still cannot properly use the find command. Part of the problem is that I don’t need to use it that frequently. Most of the time I’m only concerned with a few directories that I use nearly daily and I’m very familiar with their contents. Every once in a while I need a file that I know exists, I just can’t remember exactly what I named it or where I put it. I’ll poke around my system with Thunar or Ranger for some time, then try to use find which inevitably ends in my reviewing the manpage yet again to figure out how to use the damn thing. Even after that I’ll probably get it wrong a few times, wind up finding nothing or everything on my system, and finally I flip my keyboard and walk away.

But then I remember, I have CatFish! It’s exactly the program you need if you want to find stuff without the potential irritations of command-line tools like find and locate. CatFish’s options are few but adequate. There are some appearance and display options, and a list of directories to exclude. By default the search is narrowed to your home directory, but it can be changed with a few clicks. Once you’ve found the files you’re looking for, a right-click context menu gives you a few useful options:

  • Open with [XDG default]
  • Open with…
  • Show in file manager
  • Copy location
  • Save as…
  • Delete

The delete function comes in handy with AppImages. I prefer AppImages over all the other alternative package systems. They have one draw back when it comes to “uninstalling” them though: deleting the AppImage gets rid of the application but all the associated desktop, config, and other files get left behind. For example, I was using Joplin with the AppImage and decided to remove it. After deleting the AppImage itself, I opened CatFish and did a search for joplin. No need to glob or use a regex string; CatFish assumes you want any files with joplin in the name. You can tell CatFish to return exact matches only but I don’t know why you would want to. What returns is a list of all the leftover Joplin configuration and desktop files, many in different locations, that I can now delete in one fell swoop.

That’s pretty much all there is to say about CatFish. It’s a pretty simple program but it does exactly what you expect to do and it does so very well. It’s a perfect Unix tool, what more can I say? If you didn’t know about it, open your package manager now and get it, you will thank me!