voidtools

Search Functions

Search functions find files and folders by property values.


Syntax
Operators
Date syntax
Date constants
Duration syntax
Attribute syntax
Search modifiers
Sub-expressions
Lists
Substitution
Formulas
Column header search
Slow queries
Search weights
Multi-string values
All functions



Syntax

function:value

Where function is the search function by name and value is the query input.

For example:
date-modified:today
size:>10mb



Dashes (-) in search function names can be omitted.

For example:
datemodified:today
is the same as:
date-modified:today



Use double quotes to match text literally and escape operators.

For example:
artist:"John Doe"
-or-
artist:John" "Doe



Use a * after the function name to treat the rest of the search as literal text.

No further parsing is performed.

For example:
content*:<div class="menu"> = matches files containing the literal text <div class="menu">
-or-
si*:"1+1=2" = searches the system index for the literal text "1+1=2"



If the value is empty, Everything matches non-zero values or non-empty text.



The following operators can be used with numerical values:

function:<=value
Less than or equal to value.

function:<value
Less than value.

function:value
Equal to value within the specified value granularity.
size:1kb is the same as size:1024..2047

function:==value
function:=value
Exactly equal to value.
size:=1kb is the same as size:1024

function:>value
Greater than value.

function:>=value
Greater than or equal to value.

function:!=value
Not equal to value.

function:!value
Not equal to value with specified granularity.

function:start..end
function:start-end
Is in the range of values from start to end (inclusive).

function:unknown
The property value is unknown (has not been indexed yet, or Everything failed to gather the property value).

For example:
size:<=10mb = size is less than or equal to 10MB
size:<10mb = size is less than 10MB
size:==1kb = size is exactly 1024 bytes
size:=1kb = size is exactly 1024 bytes
size:1kb = size is between 1024 and 2047 bytes
size:>=10mb = size is greater than or equal to 10MB
size:>10mb = size is greater than 10MB
size:!=1kb = size is not exactly 1024 bytes
size:!1kb = size is not between 1024 and 2047 bytes
size:2mb..3mb = size is between 2MB and 3MB
size:2mb-3mb = size is between 2MB and 3MB



Operators

spaceAND
|OR
!NOT
< >Grouping
" "Match text literally and escape operators.



Date syntax

month/year or year/month
For example:
date-modified:07/2026
date-modified:2026/07

day/month/year, month/day/year or year/month/day
The order depends on locale settings.

For example:
date-modified:02/07/2026
date-modified:2026/07/02
date-modified:07/02/2026

ISO 8601 extended
YYYY[-MM[-DD[Thh[:mm[:ss[.sss]]]]]]

* wildcard is supported in ISO 8601 extended format.

For example:
date-modified:2026-07
date-modified:2026-07-02
date-modified:2026-07-02T10:52
date-modified:*-02
date-modified:*-*-*T9:00..*-*-*T17:00

ISO 8601 basic
YYYYMMDD[Thh[mm[ss[.sss]]]]]

For example:
date-modified:20260702

YYMMDD
For example:
date-modified:260702 => 2026-07-02

YYYY
Four-digit year.

For example:
date-modified:2026

YY
Two digit year in the current century.

For example:
date-modified:26 = match files/folders modified in 2026

Relative duration
x<years|months|weeks|days|hours|minutes|seconds>

Matches values from now back by the specified duration.

For example:
date-modified:2days = modified in the last 2 days.
date-modified:3months = modified in the last 3 months.
date-modified:4hours = modified in the last 4 hours.

Excel DateTime
10000 - 99999 => (1927-05-18 - 2173-10-13)

For example:
date-modified:46189.7795022

FILETIME
9+ digit FILETIME value (decimal or hex with 0x prefix)

For example:
date-modified:134260745917910877
date-modified:0x1DCFD6FE3B74F5D



Date constants

Date constants can be used anywhere a date value is expected.

today
yesterday
january|february|march|april|may|june|july|august|september|october|november|december
jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec
sunday|monday|tuesday|wednesday|thursday|friday|saturday
sun|mon|tue|wed|thu|fri|sat
mtd|ytd|qtd = month to date | year to date | quarter to date
unknown



Duration syntax

Unit duration format
[n<hours|hour|h>][n<minutes|minute|mins|min|m>][n<seconds|second|secs|sec|s>]

For example:

length:5mins
length:1hour2mins5secs
length:>10mins
length:40mins..50mins

Time duration format
[[[days:]hours:]minutes:]seconds[.milliseconds]

For example:
length:1:32 = matches media files with a length of 1 minute and 32 seconds
length:1:43:21.987 = matches media files with a length of 1 hour 43 minutes and 21.987 seconds

ISO 8601 duration
P[n]Y[n]M[n]DT[n]H[n]M[n]S
P[n]W
PYYYYMMDDThhmmss
P[YYYY]-[MM]-[DD]T[hh]:[mm]:[ss]

For example:
length:pt1h20m30s
length:p1w
length:pt012030
length:pt1:20:30



Attribute syntax

Attributes can be zero or more of the following:
  • A = Archive
  • C = Compressed
  • D = Directory
  • E = Encrypted
  • H = Hidden
  • I = Not Content Indexed
  • L = Reparse Point
  • N = Normal
  • M = Recall on Data Access
  • O = Offline
  • P = Pinned
  • R = Read Only
  • S = System
  • T = Temporary
  • U = Unpinned
  • V = Integrity Stream
  • X = No Scrub Data
-or-

Zero or more Windows file attributes in decimal or hex (with 0x prefix).

For example:
attributes:RASH = matches files/folders that include all specified attributes (RASH)
attributes:0x200 = matches sparse files



Search modifiers

Prefix a search function with zero or more search modifiers to apply the associated effect.

For example:
case:regex:content:"^Start of the file content with some digits \d\d\d\d"



Sub-expressions

content:<abc 123>
is the same as:
content:abc content:123

content:<abc|123>
is the same as:
content:abc | content:123



Lists

Semicolon (;) delimited lists can be used with any search function that accepts a number, date or text.

Semicolons can be escaped with double quotes (").

Lists are treated as OR expressions.

width:1920;3840
is the same as:
width:1920 | width:3840



Substitution

Everything will substitute $property-name: with the property value from the current file or folder.

Substitution works with filename functions (most string functions).

exists:$shortcut-target:
regex:^(.*)\.[^.]*$ sibling:$1:
extension: stem:.$extension: = stem contains the extension / duplicated extension in filename



Formulas

Everything will use Formulas when no function is specified and $property-name: is used.

The file or folder matches if the formula evaluates to true.

$date-modified:==$date-created: = date-modified is equal to date-created
UPPER($name:)>="N" UPPER($name:)<="S" = name starts with N to S
$name:[1]=='o' = second letter of name is o
LEN($stem:)%3==0 = stem length is a multiple of 3
*.lnk !EXISTS($shortcut-target:) = matches lnk files where the shortcut target doesn't exist



Column header search

To search for text in an active column:
  • Right click a result list column header and click Search property...
Search function names will generally match the text shown for the associated property.



Slow queries

A progress bar is shown at the bottom right of the status bar for queries that take a long time.
Double click the progress bar to cancel the search.



Search weights

Each search function has an internal weight that measures the estimated speed of the function.
Search functions are reordered from fastest to slowest.
Faster search functions are executed first.

For example:
content:"abc 123" "c:\my docs\"
will find files in c:\my docs before looking for file content.

There are three major weight groups:
  • Search functions that access indexed information (fast)
  • Search functions that access the disk or system index (medium)
  • Search functions that access file content (slow)


Multi-string values

Some properties can have multiple values.
Properties with multiple values are displayed as a semicolon (;) delimited list.

By default, searches compare against each value individually.
A match occurs if any value matches.

Use the all-strings: modifier to require every value to match the search.
Use the no-multi-string: modifier to treat the value as a single literal string.

For example:
artist:john = matches media files where any artist value contains john.
whole:artist:jane = matches media files where any artist value matches the full value jane.
artist:john;jane = matches media files where any artist contains john or jane.
all-strings:artist:john;jane = matches media files where every artist value contains john or jane.



All functions

Content functions:
ansi-content:
ascii-content:

Image functions:
35mm-focal-length:
altitude:
aperture:
aspect-ratio:

audio functions:
album:
album-artist:
artist:
audio-bitrate:
audio-bits-per-sample:
audio-channels:

find duplicate functions:
attributes-dupe:

file functions:
allocation-size:
alternate-data-stream-ansi:
alternate-data-stream-count:
alternate-data-stream-hex:
alternate-data-stream-names:
alternate-data-stream-text-plain:
alternate-data-stream-utf16:
alternate-data-stream-utf16be:
alternate-data-stream-utf8:
attributes:

video functions:
artist:
aspect-ratio:
audio-bitrate:
audio-bits-per-sample:
audio-channels:

volume functions:
alignment-requirement:

UI functions:
add-column:
add-layout:
alternate-row-color:
no-alternate-row-color:

Hierarchical relationship functions:
ancestor:
ancestor-attributes:
ancestor-child:
ancestor-file-list-0:
ancestor-file-list-1:
ancestor-file-list-2:
ancestor-file-list-3:
ancestor-file-list-4:
ancestor-file-list-5:
ancestor-file-list-6:
ancestor-file-list-7:
ancestor-file-list-8:
ancestor-file-list-9:
ancestor-name:
ancestor-sibling:


35mm-focal-length:
Matches photo files with the specified 35mm-equivalent focal length in millimeters.

For example:
35mm-focal-length:77mm
35mm-focal-length:>50mm
35mm-focal-length:28mm..36mm



add-column:
Add columns to the result list.

Specify a semicolon (;) delimited list of columns by property name.
Columns are temporarily added while this search is active.

Right-click the result list column header and click Add Columns... to browse property names.
Use a :<zero-based-index> suffix to specify the position of the added column.
Use a JSON array of column objects to specify the column property name and width in logical pixels.

Aliases: addcol: add-columns:

For example:
add-column:length
add-column:width;height
add-column:file-signature:1
addcol:"crc32":0
add-column:[{"name":"width","width":50},{"name":"height","width":50}]

See also columns:
See also remove-columns:



add-layout:
Temporarily add to the layout with the specified semicolon (;) delimited list of display items by name.

The layout list can include zero or more of the follow items:
  • preview
  • folders
  • filters
  • filterbar
  • menu
  • fullscreen-menu
  • statusbar
  • header
For example:
add-layout:preview;folders

See also layout:
See also remove-layout:



album:
Matches media files with the specified album.

For example:
album:"My Album Name"
album:abc



album-artist:
Matches media files with the specified album artist.

For example:
album-artist:"My Album Artist"
album-artist:Alice



alignment-requirement:
Matches files and folders on volumes with the specified alignment requirement in bytes.

For example:
alignment-requirement:4096
alignment-requirement:>4096



allocation-size:
Matches files with the specified allocation size in bytes.

The allocation-size property is the true size-on-disk value.

For example:
allocation-size:>1mb
allocation-size:65536
allocation-size:200mb..300mb

See also size-on-disk:



alternate-data-stream-ansi:
Matches files with alternate data streams containing the specified text.
Alternate data streams are treated as ANSI text for matching.

Aliases: ads-ansi:

For example:
alternate-data-stream-ansi:abc
alternate-data-stream-ansi:"my text search"



;alternate-data-stream-count:
Matches files with the specified number of alternate data streams.

Aliases: ads-count:

For example:
alternate-data-stream-count:>0
alternate-data-stream-count:3..4



alternate-data-stream-hex:
Matches files with alternate data streams containing the specified hex-encoded text.
Alternate data streams are converted to hex text for matching.

Aliases: ads-hex:

For example:
alternate-data-stream-hex:68656C6C6F
alternate-data-stream-hex:350300006500000031



;alternate-data-stream-names:
Matches files with alternate data stream names containing the specified text.

Aliases: ads-names: ads-name:

For example:
alternate-data-stream-names:Zone.Identifier
whole:alternate-data-stream-names:Zone.Identifier



alternate-data-stream-text-plain:
Matches files with alternate data streams containing the specified text.
Alternate data streams are treated as text/plain for matching.

Aliases: ads-text-plain:

For example:
alternate-data-stream-text-plain:abc
alternate-data-stream-text-plain:"my text search"



alternate-data-stream-utf16:
Matches files with alternate data streams containing the specified text.
Alternate data streams are treated as UTF-16 (Unicode) text for matching.

Aliases: ads-utf16:

For example:
alternate-data-stream-utf16:abc
alternate-data-stream-utf16:"my text search"



alternate-data-stream-utf16be:
Matches files with alternate data streams containing the specified text.
Alternate data streams are treated as UTF-16 BE (Big Endian Unicode) text for matching.

Aliases: ads-utf16be:

For example:
alternate-data-stream-utf16be:abc
alternate-data-stream-utf16be:"my text search"



alternate-data-stream-utf8:
Matches files with alternate data streams containing the specified text.
Alternate data streams are treated as UTF-16 (Unicode) text for matching.

Aliases: ads-utf8:

For example:
alternate-data-stream-utf8:abc
alternate-data-stream-utf8:"my text search"



alternate-row-color:
no-alternate-row-color:
Temporarily enables or disables alternate row coloring in all windows.

Overrides the default setting under Tools -> Options -> View -> Alternate row color.

For example:
alternate-row-color:
no-alternate-row-color:



altitude:
Matches photo files with metadata containing the specified altitude in meters.

For example:
altitude:>600m
altitude:350m
altitude:-50m..50m



ancestor:
Matches files and folders with the specified ancestor (parent or grandparent, or higher) by absolute full path.
This function is similar to parent: except subfolders are also searched.

For example:
ancestor:C:
ancestor:C:\Windows
ancestor:"C:\Program Files"

See also parent:



ancestor-attributes:
Matches files and folders where an ancestor (parent or grandparent, or higher) includes all the specified attributes.

Attribute indexing is required.

The Hidden and System attributes are ignored for root volumes (eg: C:)

Aliases: ancestor-attr: ancestor-attrib: ancestor-attribute:

For example:
ancestor-attributes:HDI
!attrib:h ancestor-attributes:H = matches files/folders that are not hidden in a hidden folder
exact:ancestor-attributes:H = matches where the ancestor's attributes are exactly H



ancestor-child:
ancestor-child-file:
ancestor-child-folder:
Matches files and folders where an ancestor (parent or grandparent, or higher) has a child whose filename contains the specified text.

Use ancestor-child-file: to match files only.
Use ancestor-child-folder: to match folders only.

For example:
!whole:ancestor-child-file:.gitignore = exclude folders, subfolders and files with a .gitignore file



ancestor-file-list-0:
ancestor-file-list-1:
ancestor-file-list-2:
ancestor-file-list-3:
ancestor-file-list-4:
ancestor-file-list-5:
ancestor-file-list-6:
ancestor-file-list-7:
ancestor-file-list-8:
ancestor-file-list-9:
Matches files and folders that have an ancestor in a file list slot.

For example:
ancestor-filelist1:



ancestor-name:
Matches files and folders where an ancestor (parent or grandparent, or higher) has a name containing the specified text.

For example:
ancestor-name:"Program Files"
whole:ancestor-name:windows

See also parent-name:



ancestor-sibling:
ancestor-sibling-file:
ancestor-sibling-folder:
Matches files and folders where an ancestor (parent or grandparent, or higher) has a sibling whose filename contains the specified text.

The ancestor itself is not included in the search.
Use ancestor-sibling-file: to match sibling files only.
Use ancestor-sibling-folder: to match sibling folders only.

For example:
whole:ancestor-sibling:".gitignore"

See also sibling:
See also parent-sibling:



ansi-content:
Matches files with content containing the specified text.
Content is treated as ANSI text for matching.

For example:
ansi-content:"my content"
ansi-content:abc

Searching content is very slow.
Combine with other filters for the best performance.



aperture:
Matches photo files with the specified aperture (f-number).

For example:
aperture:3.625
aperture:>4
aperture:2..4



artist:
Matches media files with the specified artist.

Artist is a multi-string value.

For example:
artist:bob
artist:"John Doe"
whole:artist:"Jane Doe"



aspect-ratio:
Matches image and video files with the specified aspect ratio.

Aspect ratios can be specified as ratios (e.g. 16:9) or decimal values (e.g. 1.33).

Constant values: square landscape portrait

For example:
aspect-ratio:4:3
aspect-ratio:square
aspect-ratio:16:8..16:10
aspect-ratio:1.3..1.5
aspect-ratio:>16:9
aspect-ratio:>1



ascii-content:
Matches files with content containing the specified text.
Content is treated as ASCII text for matching.

For example:
ascii-content:"my content"
ascii-content:abc

Searching content is very slow.
Combine with other filters for the best performance.



attributes:
Matches files and folders that include all the specified attributes.

For the best performance, enable attribute indexing.

Aliases: attr: attrib:

For example:
attributes:rash
!attributes:h
attributes:0x200 = matches sparse files



;attributes-dupe:
Matches files and folders that have the same attributes as other file or folder results.

For the best performance, enable attribute indexing.

Aliases: attr-dupe: attrib-dupe:

For example:
attributes-dupe:



audio-bitrate:
Matches media files with the specified audio bitrate in kilobits per second.

For example:
audio-bitrate:320
audio-bitrate:>224kbps
audio-bitrate:64kbps..128kbps



audio-bits-per-sample:
Matches media files with the specified audio bits per sample.

For example:
audio-bits-per-sample:24
audio-bits-per-sample:<16
audio-bits-per-sample:24..32



audio-channels:
Matches media files with the specified number of audio channels.

For example:
audio-channels:6
audio-channels:>2
audio-channels:1..2



audio-format:
Matches media files with the specified audio format.

For example:
audio-format:FLAC
audio-format:MP3
audio-format:"Monkey's Audio"



audio-sample-rate:
sample-rate:

Search audio and video files for the specified audio sample rate in Hz.

audio-sample-rate:44100
audio-sample-rate:44.1khz
audio-sample-rate:>44100
audio-sample-rate:11025..22050



audio-track-count:

Search audio and video files for the specified number of audio tracks.

audio-track-count:0
audio-track-count:>1



author:
authors:

Search documents for the specified author.

For example:
author:"John Doe"
author:"Jane Doe"



author-url:

Search documents for the specified author URL.

For example:
author-url:www.voidtools.com



available-free-disk-size:

Search for the free disk space in bytes on the volume of the current file.

For example:
root: available-free-disk-size:<10gb



background-search:
no-background-search:

Allow or disallow background content searching.
If disabled, the search does not complete until all results are found.
The default behavior is to search content in the background.

For example:
  • .txt content:foo no-background-search:


    basename:
    name:

    Search the basename of the current file.
    The basename includes the file extension.

    For example:
    basename:hosts
    name:c:

    See also stem: (basename without extension)



    beats-per-minute:

    Search for audio files with the specified beats-per-minute.

    For example:
    beats-per-minute:120
    beats-per-minute:>200
    beats-per-minute:150..180



    binary-content:

    Search file content and treat the content as a byte stream.
    Everything will search the byte stream for ASCII, ANSI, UTF-8, UTF-16LE and UTF-16BE text.
    Use binary:content: to treat the content and search as binary.

    For example:
    binary-content:"my content"
    binary-content:abc

    Searching content is very slow.
    Combine with other filters for the best performance.



    binary-type:

    Search for executable files with the specific type.

    Can be one of the following:
    • 32-bit Windows
    • MS-DOS
    • 16-bit Windows
    • PIF
    • POSIX
    • 16-bit OS/2
    • 64-bit Windows
    For example:
    binary-type:"64-bit Windows"



    birth-object-id:

    Search for files and folders with the specified birth object identifier in hexadecimal.

    For example:
    birth-object-id:0123456789abcdef0123456789abcdef

    See also birth-volume-id:
    See also domain-id:
    See also object-id:



    birth-volume-id:

    Search for files and folders with the specified birth volume identifier in hexadecimal.

    For example:
    birth-volume-id:0123456789abcdef0123456789abcdef

    See also birth-object-id:
    See also domain-id:
    See also object-id:



    bit-depth:
    bits-per-pixel:
    bpp:

    Search photo and video files for the specified color bit-depth.

    For example:
    bit-depth:8
    bit-depth:16
    bit-depth:>=24



    bom:
    byte-order-mark:

    Search for files that contain or do-not contain a UTF-8, UTF-16LE or UTF-16BE byte order mark.

    For example:
    bom:UTF-8
    bom:"UTF-16 (BE)"
    bom:"UTF-16 (LE)"
    bom:none



    bookmark:
    bookmarks:

    Apply the specified semicolon delimited list of search bookmarks by name.
    Use :parameters to pass parameters to the bookmarks macro.

    For example:
    bookmark:"My Bookmark";"My bookmark with a macro":"my bookmark parameters";bookmark1



    bookmarks-sidebar
    no-bookmarks-sidebar

    Temporarily show or hide the bookmarks sidebar.

    For example:
    bookmarks-sidebar:
    no-bookmarks-sidebar:



    brightness:

    Search for photo and video files for the specified brightness levels.

    For example:
    brightness:3.2..5.7
    brightness:<0



    byte-offset-for-partition-alignment:

    Search for files and folders that belong to a file system with the specified bytes offset for partition alignment in bytes.

    For example:
    byte-offset-for-partition-alignment:1048576



    byte-offset-for-sector-alignment:

    Search for files and folders that belong to a file system with the specified bytes offset for sector alignment in bytes.

    For example:
    byte-offset-for-sector-alignment:512
    byte-offset-for-sector-alignment:4096




    byte-stream-content:
    octet-stream-content:

    Search file content and treat the content and search as a byte stream.

    For example:
    byte-stream-content:"hello world"
    byte-stream-content:\x00\x00

    Searching content is very slow.
    Combine with other filters for the best performance.

  • About voidtools
    © 2026 voidtools - Privacy