Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

Declined Add inversion to FFIND's text searches (/T and /E) ...

May
12,846
164
... and return only lines that don't match.

Grep uses -v, findstr uses /V. FFIND doesn't have good letters available. Is /- a possibility?

See this for background.
 
FFIND and LIST (they share most of the same code) are pretty much obsolete and I don't have any plans to enhance them in the future.
Is there anything else, internal or external, that searches for strings (/T, /E) in wildcard-named files recursively (/S)? I use FFIND a lot.
 
TCC includes Everything Search.

TCC does not include the Everything Help File,
which can be downloaded from https://www.voidtools.com/Everything.chm.zip

Examples;
Code:
Show the top 10 largest files:

es.exe -sort size -n 10


Show the last 10 modified files:

es.exe -sort dm -n 10

With the Everything SDK, those who wish to could probably create their own FFIND command, with extended features.

The voidtools forum has many answers to searching questions.

Here is an example where I used es.exe to search all .BTMs on my system that contain "jlcutils.clsmath".
Code:
E:\Utils>timer es.exe *.btm content:jlcutils.clsmath 
Timer 1 on: 10:35:43
E:\Utils\clsid.btm
U:\clsid.btm
E:\Utils\ClsID2DLL.btm
U:\ClsID2DLL.btm
E:\Utils\ppp.btm
U:\ppp.btm
E:\Documents\vb6\jlcutils\surrogate.btm
Timer 1 off: 10:35:44  Elapsed: 0:00:00.309

Since Rex is not enhancing FFIND any further, ES.EXE may be an option for you.
Code:
E:\Utils>which es.exe 
es.exe is an external : C:\Program Files\JPSoft\TCMD30\es.exe

Joe
 
Last I checked, Everything doesn't have an equivalent for "FFIND /s", i.e., search in a particular folder and its subfolders.
Isn't it the default? Here's EVERYTHING in TCC v30.

Code:
v:\> everything d:\data\*.btm
D:\data\tcclibrary\dechex.btm
D:\data\tcchistory\fixhist.btm
D:\data\tcclibrary\s2dhms_source.btm
D:\data\tcclibrary\backup\sv.btm
D:\data\tcclibrary\source\sv.btm
D:\data\tcclibrary\sv_source.btm
D:\data\tcclibrary\backup\tl.btm
D:\data\tcclibrary\source\tl.btm
D:\data\tcclibrary\tl_source.btm
 
Search in the E:\Utils folder, and sub-folders, for all .CHM files that contain execstr
Code:
E:\Utils>es.exe e:\utils\*.chm content:execstr 
E:\Utils\chm\tcmd.chm

Joe
 
Note that the command line es.exe has many, many more options than the EVERYTHING internal command;
Code:
E:\Utils>which everything
everything is an internal command

Code:
E:\Utils>which es.exe
es.exe is an external : C:\Program Files\JPSoft\TCMD30\es.exe

Post #7 has the link to the help file for es.exe

Joe
 
Search all files in all folders in R:\ drive,
and search the E:\Utils folder and sub-folders,
for all .CHM files that contain execstr
Code:
E:\Utils>es.exe r:\^|e:\utils\*.chm content:execstr 
R:\4DOSHELP\4DOS.TXT
R:\SOURCES\EXPAND.C
R:\SOURCES\MESSAGE.H
R:\INSTALL.ETC\README.TXT
E:\Utils\chm\tcmd.chm
R:\4HELPSRC\TOPICS.TXT
R:\4HELPSRC\TOPNUM.TXT

Joe
 
Note that the .C source code for es.exe is available for download;


Joe
I've built a 64-bit EXE and could make it available. It has a lot of options. AFAICT, it doesn't work with the newest (1.5a) service and client.

Code:
ES 1.1.0.26
ES is a command line interface to search Everything from a command prompt.
ES uses the Everything search syntax.

Usage: es.exe [options] search text
Example: ES  Everything ext:exe;ini 


Search options
   -r <search>, -regex <search>
        Search using regular expressions.
   -i, -case
        Match case.
   -w, -ww, -whole-word, -whole-words
        Match whole words.
   -p, -match-path
        Match full path and file name.
   -a, -diacritics
        Match diacritical marks.

   -o <offset>, -offset <offset>
        Show results starting from offset.
   -n <num>, -max-results <num>
        Limit the number of results shown to <num>.

   -path <path>
        Search for subfolders and files in path.
   -parent-path <path>
        Search for subfolders and files in the parent of path.
   -parent <path>
        Search for files with the specified parent path.

   /ad
        Folders only.
   /a-d
        Files only.
   /a[RHSDAVNTPLCOIE]
        DIR style attributes search.
        R = Read only.
        H = Hidden.
        S = System.
        D = Directory.
        A = Archive.
        V = Device.
        N = Normal.
        T = Temporary.
        P = Sparse file.
        L = Reparse point.
        C = Compressed.
        O = Offline.
        I = Not content indexed.
        E = Encrypted.
        - = Prefix a flag with - to exclude.


Sort options
   -s
        sort by full path.
   -sort <name[-ascending|-descending]>, -sort-<name>[-ascending|-descending]
        Set sort
        name=name|path|size|extension|date-created|date-modified|date-accessed|
        attributes|file-list-file-name|run-count|date-recently-changed|date-run
   -sort-ascending, -sort-descending
        Set sort order

   /on, /o-n, /os, /o-s, /oe, /o-e, /od, /o-d
        DIR style sorts.
        N = Name.
        S = Size.
        E = Extension.
        D = Date modified.
        - = Sort in descending order.


Display options
   -name
   -path-column
   -full-path-and-name, -filename-column
   -extension, -ext
   -size
   -date-created, -dc
   -date-modified, -dm
   -date-accessed, -da
   -attributes, -attribs, -attrib
   -file-list-file-name
   -run-count
   -date-run
   -date-recently-changed, -rc
        Show the specified column.
        
   -highlight
        Highlight results.
   -highlight-color <color>
        Highlight color 0-255.

   -csv
   -efu
   -txt
   -m3u
   -m3u8
   -tsv
        Change display format.

   -size-format <format>
        0=auto, 1=Bytes, 2=KB, 3=MB.
   -date-format <format>
        0=auto, 1=ISO-8601, 2=FILETIME, 3=ISO-8601(UTC)

   -filename-color <color>
   -name-color <color>
   -path-color <color>
   -extension-color <color>
   -size-color <color>
   -date-created-color <color>, -dc-color <color>
   -date-modified-color <color>, -dm-color <color>
   -date-accessed-color <color>, -da-color <color>
   -attributes-color <color>
   -file-list-filename-color <color>
   -run-count-color <color>
   -date-run-color <color>
   -date-recently-changed-color <color>, -rc-color <color>
        Set the column color 0-255.

   -filename-width <width>
   -name-width <width>
   -path-width <width>
   -extension-width <width>
   -size-width <width>
   -date-created-width <width>, -dc-width <width>
   -date-modified-width <width>, -dm-width <width>
   -date-accessed-width <width>, -da-width <width>
   -attributes-width <width>
   -file-list-filename-width <width>
   -run-count-width <width>
   -date-run-width <width>
   -date-recently-changed-width <width>, -rc-width <width>
        Set the column width 0-200.

   -no-digit-grouping
        Don't group numbers with commas.
   -size-leading-zero
   -run-count-leading-zero
        Format the number with leading zeros, use with -no-digit-grouping.
   -double-quote
        Wrap paths and filenames with double quotes.


Export options
   -export-csv <out.csv>
   -export-efu <out.efu>
   -export-txt <out.txt>
   -export-m3u <out.m3u>
   -export-m3u8 <out.m3u8>
   -export-tsv <out.txt>
        Export to a file using the specified layout.
   -no-header
        Do not output a column header for CSV, EFU and TSV files.
   -utf8-bom
        Store a UTF-8 byte order mark at the start of the exported file.


General options
   -h, -help
        Display this help.

   -instance <name>
        Connect to the unique Everything instance name.
   -ipc1, -ipc2
        Use IPC version 1 or 2.
   -pause, -more
        Pause after each page of output.
   -hide-empty-search-results
        Don't show any results when there is no search.
   -empty-search-help
        Show help when no search is specified.
   -timeout <milliseconds>
        Timeout after the specified number of milliseconds to wait for
        the Everything database to load before sending a query.
        
   -set-run-count <filename> <count>
        Set the run count for the specified filename.
   -inc-run-count <filename>
        Increment the run count for the specified filename by one.
   -get-run-count <filename>
        Display the run count for the specified filename.
   -get-result-count
        Display the result count for the specified search.
   -get-total-size
        Display the total result size for the specified search.
   -save-settings, -clear-settings
        Save or clear settings.
   -version
        Display ES major.minor.revision.build version and exit.
   -get-everything-version
        Display Everything major.minor.revision.build version and exit.
   -exit
        Exit Everything.
        Returns after Everything process closes.
   -save-db
        Save the Everything database to disk.
        Returns after saving completes.
   -reindex
        Force Everything to reindex.
        Returns after indexing completes.
   -no-result-error
        Set the error level if no results are found.


Notes 
    Internal -'s in options can be omitted, eg: -nodigitgrouping
    Switches can also start with a /
    Use double quotes to escape spaces and switches.
    Switches can be disabled by prefixing them with no-, eg: -no-size.
    Use a ^ prefix or wrap with double quotes (") to escape \ & | > < ^
 
Is your 64-bit ES.EXE the same as the 64-bit ES.EXE that is included with TCC?
Code:
C:\...\TCMD30>which es.exe 
es.exe is an external : C:\Program Files\JPSoft\TCMD30\es.exe

Code:
C:\...\TCMD30>es.exe -version 
1.1.0.26

Joe
 
Same version but it's a 32-bit version.

Code:
v:\> d u:\es.exe
2022-09-26  16:57         117,768  es.exe

v:\> d d:\tc30\es*
2023-06-19  10:20         234,256  es.exe

v:\> u:\es.exe -version
1.1.0.26


I also have a 64-bit build of 1.1.0.20.
 

Similar threads

Back
Top