---
name: "git-annex-matchexpression"
section: "1"
platform: "linux"
package: "git-annex"
version: "10.20261026-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/git-annex-matchexpression"
---

# git-annex-matchexpression(1)

checks if an expression matches

## NAME

git-annex-matchexpression - checks if an expression matches

## SYNOPSIS

git annex matchexpression **expression \[data\]**

## DESCRIPTION

This plumbing-level command is given a preferred content expression, and some data, and checks if the expression matches the data. It exits 0 if it matches, and 1 if not. If not enough data was provided, it displays an error and exits with special code 42.

For example, this will exit 0:

 git annex matchexpression "include=\*.png and largerthan=1mb" --file=foo.png --size=10mb

## OPTIONS

- **--file=**

  -

  Provide the filename to match against. Note that the file does not have to actually exist on disk.

-

  - **--size=**

  Tell what the size of the file is. The size can be specified with any commonly used units, for example, "0.5 gb" or "100 KiloBytes".

-

  - **--key=**

  Tell what key is being matched against. This is needed for matching expressions like "copies=N" and "metadata=tag=foo" and "present", which all need to look up the information on file for a key.

-

  Many keys have a known size, and so --size is not needed when specifying such a key.

-

  - **--largefiles**

  Parse the expression as an annex.largefiles expression, rather than a preferred content expression.

-

  - **--mimetype=**

  Tell what the mime type of the file is. Only needed when using --largefiles with a mimetype= expression.

-

  - **--mimeencoding=**

  Tell what the mime encoding of the file is. Only needed when using --largefiles with a mimeencoding= expression.

-

  - **--explain**

  Display explanation of what parts of the preferred content expression match, and which parts don't match.

-

  - Also the [git-annex-common-options(1)](/git-annex-common-options/1.md) can be used.

  ## SEE ALSO

[git-annex(1)](/git-annex/1.md)

[git-annex-preferred-content(1)](/git-annex-preferred-content/1.md)

[git-annex-matching-expression(1)](/git-annex-matching-expression/1.md)

[git-annex-sim(1)](/git-annex-sim/1.md)

## AUTHOR

Joey Hess \<id@joeyh.name\>
