Bare Metal Software Home

Last updated May 04 2016 11:09:41
Copyright © 2003, 2004, 2005, 2006 Bare Metal Software Pty Ltd.

Home | BareTail | BareTailPro | BareGrep | BareGrepPro | Buy Now | News | Contact Us

BareGrep

Win32 (Windows 95, 98, ME, NT, 2000, XP)

Version 1.01e 2004-07-06


If you find BareGrep useful for searching files,
you may also find BareTail useful for viewing files.

You can also download BareTail for FREE.


Product Tour

Back to Top

BareGrep is a tool for searching files. BareGrep works with both plain text files (including Windows/DOS and Unix formats) and binary files. It is possible to match both text strings and strings of binary data.

BareGrep is similar to the Unix grep tool in that it allows the search strings to be specified with a regular expression (regex). However BareGrep has a visual, windowed interface, which allows for features not available in command-line file-searching tools like Unix grep. For example, BareGrep provides a tabular presentation of the search results allowing easy navigation.

Tabular presentation of search results (sorted on results of first capturing group)
Tabular presentation of search results (sorted on results of first capturing group)

With BareGrep it is possible to sort the search results on filename, line number, the text of the line matched or any results which have been matched by capturing groups in the regular expression.

It is possible to resize and re-order the columns in the BareGrep output. The output font preferences can also be customised by the user.

Search statistics are displayed in the status bar
Search statistics are displayed in the status bar

BareGrep shows the count of lines and files matched, as well as the number of files searched in the status bar.

As the regular expression is entered by the user, the search results are updated dynamically.

Interactive regex error feedback in BareGrep
Interactive regex error feedback in BareGrep

BareGrep instantly provides error messages to the user if the regex contains a syntax error. Immediate and interactive feedback on any regex errors and results allows easy and rapid construction of correct regular expressions.

The regex syntax implemented in BareGrep is common to PHP, Perl and Java. For the exact details of the syntax used by BareGrep, see the regular expression reference. BareGrep provides case-sensitive and case-insensitive searching options. Note that BareGrep has full support for capturing groups.

History of valid regexes for session
History of valid regexes for session

BareGrep stores a list of all valid regexes used during each session, for easy repeat access. The list of recent files is saved to the registry.

Specifying multiple files to search on the command line
Specifying multiple files to search on the command line

BareGrep can be used to search multiple files. It is possible to specify multiple files on the command line. The files specified can contain wildcards.

Specifying multiple files to search with the Open dialog
Specifying multiple files to search with the Open dialog

It is also possible to select more than one file in the file Open dialog.

Uncluttered user interface
Uncluttered user interface

BareGrep has an uncluttered user interface. Because the user-interface of BareGrep is designed to minimise use of vertical screen space, the main menu can be hidden to maximise the screen space for viewing search results.

All menu options are provided on the system window menu so that they are always accessible. The system window menu can be accessed by clicking on the icon in the top left of the application window or by pressing Alt-SPACE. BareGrep provides easy keyboard and mouse access to all features.

Standard Bare Metal Software window placement options
Standard Bare Metal Software window placement options

All Bare Metal Software visual, windowed tools provide standard options for easy layout on the screen. These features include an 'always on top' option, as well as several commonly used window size and position settings.

BareGrep stores some persistent data such as user-preferences and recent files in the Windows registry under the key:

HKEY_CURRENT_USER\Software\Bare Metal Software\BareGrep

As BareGrep is distributed as a single, small, executable file, you may uninstall it by deleting this file and any data associated with the registry key above.


Features at a Glance

Back to Top

Version 1.01

  • Optimised search performance for regexes without capturing groups.

  • Online help.

Version 1.00

  • BareGrep has a visual, windowed interface with tabular output of results.

  • BareGrep handles multiple files and supports a command-line interface.

  • BareGrep can search text (including Unix and DOS/Windows format) and binary files.

  • BareGrep provides incremental searching.

  • BareGrep does interactive regex syntax checking.

  • Strings matched by regex capturing groups are presented by BareGrep in separate columns for easy manipulation.

  • The regular expression (regex) syntax implemented by BareGrep is common to Perl, PHP and Java

  • With BareGrep the search results output font can be customised.

  • BareGrep has an uncluttered user interface.

  • BareGrep stores a history of valid regexes for the session.

  • BareGrep stores recent files in the registry.

  • BareGrep has the standard Bare Metal Software application options for easy window placement

  • BareGrep is distributed as a small, single, executable file.


Command Line Usage

Back to Top

baregrep [-i|--ignore-case|-v|--invert-match] [pattern {file(s)}]

If BareGrep is started from the command line without any command line arguments, for example:

baregrep

then it prompts the user for a search pattern and a file or files to open. Similarly, if only a pattern is specified on the command line, then BareGrep prompts the user for a file or files to open.

It is possible to specify one or more files on the command line, such as:

baregrep struct main.cpp engine.cpp

in which case BareGrep would search the two files main.cpp and engine.cpp for the pattern struct.

The usual operating system wildcards can be used to specify a set of files, for example:

baregrep class *.cpp engine.??

would search all files with the cpp extension and any files named engine with a two character extension for the pattern class.

It is possible to specify a case-insensitive pattern match with the -i or --ignore-case flag. For example:

baregrep -i TODO

or:

baregrep --ignore-case TODO

would specify a case-insensitive search for the pattern TODO.

The pattern matching can be inverted with the -v or --invert-match flag. For example:

baregrep -v OK

or:

baregrep --invert-match OK

would match all lines which do NOT contain the pattern OK.


Want to know about new releases?


We only send email when we release a new version (Privacy Policy)

Our product news is also provided as an RSS Bare Metal Software RSS News Feed feed.

Home | BareTail | BareTailPro | BareGrep | BareGrepPro | Buy Now | News | Contact Us

Copyright © 2003, 2004, 2005, 2006 Bare Metal Software Pty Ltd.