Search for files containing some text in your filesystem

Search your filesystem for files matching various customizable criteria including glob-style matching of file names and optional searching of the contents of files for a specified string. Currently, all searches are case insensitive.

This is a working alternative to Catfish and is roughly based on the file search tool that came with the Windows 98 SE operating system. This software is designed with compatibility in mind, but has only been tested on Mint Linux.

Screenshot of FindFiles
Screenshot of FindFiles

Arguments, if included, are used to pre-fill the entry fields in the GUI. The first arg is the path of the directory to search. The second, if present, is the pattern to match file names. The third, if present, is the string to search for within files. Examine the following example:

python3 "/path/to/search/" "*.txt" "string"

So as you see, the first arg to the script is the folder, then the pattern for file names, then the string to search in file contents.

To get Thunar to open this app for searching on Linux Mint, simply edit /home/$USER/.config/Thunar/uca.xml and change catfish %f to python3 /path/to/ %f and enjoy. (Edit /path/to/ to match the full path to on your system.)

Future Development

More options will be added in the advanced tab, such as ranges for date modified and/or created.

Show more details of files in list, such as size?

Option to use regular expressions instead of glob- or string-matching.

Need the ability to choose whether searches are case sensitive for file names and contents. In the advanced layout, this will be a checkbox next to the corresponding entry.

The window should be resizable because some paths shown in the listbox cannot be fully seen due to limited width.

In Linux, show permissions in file details/properties in right-click menu for files in listbox.

Some of the right-click menu options in the listbox might be better implemented in other ways.

This software is coded in Python3 and uses the tkinter library for the GUI.

The zip file is only 3308 bytes! That's because of maximal compression, my coding style, and a lack of all manner of typical cruft and wastefulness.

Page generated in 0.001453 seconds.

© 2024 RockyMount.US