dnGrep - non-indexing power search

Submit portable freeware that you find here. It helps if you include information like description, extraction instruction, Unicode support, whether it writes to the registry, and so on.
Post Reply
Message
Author
User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

dnGrep - non-indexing power search

#1 Post by webfork »

A dotNET-based windows search tool supporting Word, PDF, and archives (via plug in) that comes highly recommended.

Features:
Search using text, regular expressions (regex), XPath, and phonetics
Search-and-replace, including undo
Whole-file preview
Right-click to search in File Explorer
Move/copy/delete result files
Open line results in a custom editor, like Notepad++
Bookmark search patterns for later use
Try out complex searches in the Test window

Site: http://dngrep.github.io/ or https://www.softpedia.com/get/System/Fi ... GREP.shtml

License: GPLv2

Status: Untested

Image

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: dnGrep

#2 Post by webfork »

Smaragdus pointed me to this program and I was initially put off by the XPath function. I just didn't want to re-learn another search syntax like Apache Lucene, but really that's just an extra feature that you can ignore.

Steps: Download, uniextract, and then move the contents of dnGREP.2.9.256.x64\dnGREP to a folder of your choice. Launch dngrep.exe.

Status: Portable. Writes to dnGREP.Settings in the application folder. Stealth: no, writes some window details "user.config" in appdata. Tested v.2.9.174 on Win10

Features:
  • Dark theme looks great
  • Searches a host of file types not normally covered by tools like this including Word and Excel
  • Not just search but also replace text
  • Able to do multi-line replacements rather than just a simple string
  • Multi-thread searching
  • Loads of options for date, size range
  • Search near-sounding words like "laser" to get words like "layer" "users" and "latest"
  • Regular expressions search functionality for Word and PDF, which isn't easy to come by
Search results features:
  • Ability to keep doing "search in results" to repeatedly refine your search
  • File operations such as delete, copy, move, and list files
  • Colorized code in results preview window
Caveats
  • All searching is manual, meaning there's no index. This can be either good or bad depending on your preference for speed vs. accuracy and resource usage.

Wishlist
  • Support for ODT/ODS files (open document format)
  • Supports for PowerPoint files
  • Preview window for PDF files (currently just shows what looks like odd binary data)
---

Related tools:
  • Nirsoft's SearchMyFiles already has a larger file support capability, but lacks some of the search features such as Regex (though it is on his todo list).
  • ByteScout's PDF Multitool will also do PDF regex searches, but is only free for personal use.

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: dnGrep

#3 Post by webfork »

New update out: https://github.com/dnGrep/dnGrep/releases (v2.9.184.0)

This week I did some more testing, including a complex, multi-line find-and-replace for ~150 documents and it worked beautifully. Would really like to add to the database but, given that it's still in beta, I'll give it some more time and testing.

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: dnGrep

#4 Post by webfork »

dnGrep is rapidly becoming one of the most important programs on my machine. Below is an example of a command-line function I use to check documents. This one grabs websites from inside Word files saved on my desktop. All the text below is saved to a text file, renamed to a ".bat" ending, and launched. Works great.

Code: Select all

start "" "C:\Temp\dngrep\dnGREP.exe" "C:\Users\USERNAME\Desktop\*.docx" "http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+"
(Details here: https://github.com/dnGrep/dnGrep/wiki/Command-Line | regex code from: http://urlregex.com/ (the Python bit)

A slightly different version lets me check a list of terms (e.g. you have a team member who swears a lot and don't want that ending up on the public website) by putting "|" in between the words. You may need to check "Boolean Operators"

Code: Select all

start "" "C:\Temp\dngrep\dnGREP.exe" "C:\Users\USERNAME\Desktop\*.docx" "word1|word2|phrase 1|phrase 2"
More on the regex code: : https://phoenixnap.com/kb/grep-multiple-strings

User avatar
rbon
Posts: 361
Joined: Wed Mar 28, 2007 2:16 am
Location: Italy

Re: dnGrep

#5 Post by rbon »

New update out: https://github.com/dnGrep/dnGrep/releases (v2.9.282)
- site: https://dngrep.github.io/
- direct download link dnGrep 32 bit: https://github.com/dnGrep/dnGrep/releas ... 82.x86.msi
- direct download link dnGrep 64 bit: https://github.com/dnGrep/dnGrep/releas ... 82.x64.msi

Changes in this release:
#456 Add = character as a whole word boundary for plain text search
#457 Fixed bug in .gitignore filter to remove quotes around path and file names when there are spaces in the path
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Rick Cook.

User avatar
rbon
Posts: 361
Joined: Wed Mar 28, 2007 2:16 am
Location: Italy

Re: dnGrep

#6 Post by rbon »

dnGrep rel. 3.0.0.0 has been released at January 17, 2022

Links:
• web site: https://dngrep.github.io/
• GitHub project page: https://github.com/dnGrep/dnGrep
• download page for last build: https://github.com/dnGrep/dnGrep/releases?page=1
• direct download for 32 bit: https://github.com/dnGrep/dnGrep/releas ... .0.x86.msi
• direct download for 64 bit: https://github.com/dnGrep/dnGrep/releas ... .0.x64.msi

Changelog for rel. 3.0.0.0:
Code signing: the big news with this release is that dnGrep releases are now signed with a code signing certificate provided by SignPath.io https://signpath.io/, certificate by SignPath Foundation. A big thank-you to SignPath for their support of open-source software.

Starting with this 3.0 release, you will no longer get the "Unknown Publisher" warning from Windows. However, at least initially, you will see and almost identical Microsoft Defender SmartScreen warning for an "unrecognized app". Click the "More info" link, you should see the publisher as SignPath Foundation (if you don't see SignPath as the publisher, don't install it), and then you can click the "Run anyway" button. With the code signing certificate, the application has to gain reputation before this warning is not shown any more (i.e. installed by a threshold number of users, there is no official documentation on how this works exactly). And since the application reputation is associated with the certificate, this process will be repeated in three years when the certificate is renewed.

The dnGrep install kits and the application binary files are signed. The signed files mean the code you see in GitHub is the code built on AppVeyor, scanned for malware, and signed on SignPath. Code signing is applied only to dnGrep project code in the dnGrep GitHub repository release branch and built on AppVeyor. The dnGrep install kit contains third-party libraries used by dnGrep, which may or may not be signed.

Other changes:
• Chinese (Traditional) translation has been added
• PowerPoint search
• Validation color
• Byte search test expression
• Bookmark sections
• Icon refresh
Create a Portable version:
simply use Universal Extractor Portable v1.6.1 https://github.com/dan-carroll/Universa ... Dev_Test_6

Since build 2.9.291.0 of december 30, 2020 dnGrep is now fully portable.

Changelog of build 2.9.291.0:
#238 Updates for portable runtime: Made three changes of file locations to the local directory when the directory is writable:
• Moved the window layout settings to the dnGrep.settings.dat file.
• Moved the directory for Grep_Error_Log.xml.
• Load theme files from the local directory.

Now, if you build a portable version, nothing is written or loaded from outside the local directory. The dnGrep build still does not have a zip build, but as noted in #238 you can easily create one using Universal Extractor https://github.com/Bioruebe/UniExtract2.
Help (wiki)
with a list of features https://github.com/dnGrep/dnGrep/wiki

Screenshot

"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Rick Cook.

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: dnGrep

#7 Post by webfork »

> Changelog for rel. 3.0.0.0

Thanks for the update. Look forward to testing this.

User avatar
rbon
Posts: 361
Joined: Wed Mar 28, 2007 2:16 am
Location: Italy

Re: dnGrep - non-indexing power search

#8 Post by rbon »

dnGrep rel. 3.2.306.1 has been released at May 4, 2023

Links:
• web site: https://dngrep.github.io/
• GitHub project page: https://github.com/dnGrep/dnGrep
• download page for last build: https://github.com/dnGrep/dnGrep/releases?page=1
• direct download portable (32 and 64 bit): https://github.com/dnGrep/dnGrep/releas ... .306.0.zip
• compressed archive size: 5.71 MB
• Runs on Windows 7, 8, 10, 11 or Windows Server
• Requires .NET 4.6.2 or higher
• Download .NET Framework (Microsoft): https://dotnet.microsoft.com/en-us/down ... -framework
• Softpedia review: https://www.softpedia.com/get/System/Fi ... GREP.shtml

Note
dnGrep has been made portable since rel. 3.2.242 (Jan. 6, 2023) because has been solved issue #238 https://github.com/dnGrep/dnGrep/issues/238
#238 Portable version: After many years, this release now includes a portable, zip file version of dnGrep. Just unzip to a directory or drive of your choice. User settings and log files will be written to the application directory, if it is writable; otherwise, the application data directory (AppData) will be used.
The portable version should work on either 32-bit or 64-bit systems, but I don't have a 32-bit OS to test it. The binary files in the portable version are files from 64-bit MSI build but are not signed (which is a separate post-build step for the MSI releases).
Changes in this release
History lists #836 Add pin and item delete buttons to the history lists on the main window (folder, paths, search, and replace). These lists are 'most recently used' lists. The pinned items will stay in the order that you pin them, and the unpinned items will be ordered by the most recent at the top, just below the pinned items. When you pin an item, it will be added to the end of the pinned items. When you unpin an item, it will become the first unpinned item. This makes it pretty easy to set the order without adding any other controls or special keys. You can also set the order manually in the user settings file if you have a lot of pinned items.

Upper/lower case commands #844 Added 'Make Uppercase' and 'Make Lowercase' context menu items to the dnGrep text boxes.

Script updates
• Made a change to preserve quoted strings for path arguments.
• Modified scripts to load command files from the local script directory in addition to the full path to the command file.
• Added environment variables to scripts. Define name=value pair variables that can be used in other script statements and passed when calling external commands. dnGrep creates three environment variables (not case sensitive): dnGrep_logDir, dnGrep_dataDir, and dnGrep_scriptDir.

Windows 11 context menu #849 The request is to add dnGrep to the new Windows 11 context menu, this has not been done and the issue is still open. As an alternative, you can use the Custom Context Menu app from the Windows Store or from GitHub https://github.com/ikas-mc/ContextMenuForWindows11 to add the context menu in Window 11. See issue #849 https://github.com/dnGrep/dnGrep/issues/849 for details.
In this release of dnGrep, the command line argument processing was modified to support multiple path or file arguments to work with the Custom Context Menu app.

Updated third-party libraries

Updated Translations - big thanks to all translators!

Many of the translations still need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate https://hosted.weblate.org/engage/dngrep/ for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Rick Cook.

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: dnGrep - non-indexing power search

#9 Post by webfork »

I've had the opportunity to test dnGrep again recently and I'm super impressed. The Script Editor looks *insanely* cool: https://github.com/dnGrep/dnGrep/wiki/S ... 20Commands

I was going to complain about the lack of support for the ODT format (LibreOffice) where I do everything, but in digging today I found out that's supposedly that's been resolved: https://github.com/dnGrep/dnGrep/releases/tag/v4.1.27.0

Post Reply