ptkSearcher - Little File Searcher for the Linux Desktop

Years ago I wrote a small file finder in Bash and gtk-server. Here..Why ?
Linux has its own file database called (m)locate.At this time i found the file indexer of KDE or Gnome, which were totally CPU heavy and unnecessary.
Last year i changed after 17 years from Debian unstable 32bit to Xubuntu 16.04 LTS 64bit.
Unfortunately, the gtk-server no longer ran.Some additional Libs could not be compiled under 64bit.Since I had no desire to continue to pursue, I wrote the Searcher shorthand new with Perl/Tk.

Jörg Döhring

Features

Search for files and directories in a Linux/Unix-like directory structure.
Quick search using the (m)locate database,
particular search with find (Perl-Modul) in the current state,
search for strings in files,
search manual pages (manpages) with editor capabilities.
Opens the file found with the default application (xdg-open) or with an application of your choice.
Search History for the last 100 search strings and clicked files.
Multiple instances allowed.
Depends on Perl >= 5.14 and Perl/Tk, recommended Perl 5.26.Perlcritic -3 inspected.Freeware, Open-source.

Ignore case → on/offReverse order → normal/reverse order. e.g. if output limit 200 and the result output is 800,
you will see the first 200 lines in normal order and the last 200 lines in reverse order.Output limit → Set the max. number of output lines. 0 = no limit.

Search with (M)LOCATE:
locate - find files by name using a database. This is the quickest method to find files or directories.
updatedb - creates or updates the database via cron daily. For working just in time it isnt actual.
For more infos read the man pages of updatedb and cron/crontab.
Directory to search: Select myHome(~/) or All(/) or /var or /usr ...
Usage with pattern:
'*' ⇒ '.*' → everything or nothing: *image → image, oldimage, newestimage ...
'?' ⇒ '.' → exact 1 unknown character
'[' , ']' → alternative characters: pic[AB].png → picA.png, picB.png, picAB.png, picBA.png
image → exact match
image*, *image, im*ge*.png, *.jpg, image?, [iI]mage*, charlie[123]* ...
A double-click on a result line opens the selected file with the default application via xdg-open.
On videos only, the video starts with ffplay or avplay if present. Otherwise with the default application.
A right-click on a result line opens a popup menu with the applications of your choice to open the file.

Installation

The Easy Debian Package Way for all Debian based distributions like Debian, Ubuntu, Mint etc.

Download the install_ptksearcher.zip file.
Unpack the .zip file.
Open a console and change to the install_ptksearcher directory. → cd install_ptksearcher ↵
Read the instructions of the 00_Readme_First.txt file and follow them. → less 00* ↵

On Debian/Linux become root with su
and type:

bash ./01install_deb_ptksearcher.bash

or on Ubuntu/Mint etc.
type:

sudo bash ./01install_deb_ptksearcher.bash

Important: Type 'bash' and not 'sh', because 'sh' is 'dash' on Debian. Dash is a subset of Bash.

That's it.
Now, start the Searcher with 'ptksearcher' or under the menu section Utility.

The Hard Way for all other linux/unix distributions.

Check if mlocate present. → which mlocate ↵
If the answer: /usr/bin/mlocate then it looks good.
Type → ls -l /usr/bin/*locate ↵
If the answer:
/usr/bin/fallocate
/usr/bin/locate -> /etc/alternatives/locate
/usr/bin/mlocate
/usr/bin/updatedb.mlocate
Then it looks perfect.
'mlocate' is the newer version of 'locate', so have a look that 'mlocate' is the program and 'locate' a link.
If 'mlocate' and 'locate' a program, you have 2 databases for file indexing.
This make no sense, uninstall 'locate' completely and reinstall 'mlocate'.
If 'locate' the only one on your distribution, install it if it is not there.
Install the following Distribution Packages in this Order if it is not there.
Install ttf-bitstream-vera ... this is the default font for ptksearcher
Install ttf-ancient-fonts ... for all Symbol Blocks in the Unicode Standard
Install libmodern-perl-perl
Install libutf8-all-perl
Install libipc-system-simple-perl
Install libautodie-perl
Install libfile-homedir-perl
Install libfile-mimeinfo-perl
Install libfile-which-perl
Install libfile-find-rule-perl
Install perl-tk
Install libtk-gbarr-perl

The Harder Way if one or more of the Perl Packages not present in your distribution.