git-annex/doc/git-annex-matchexpression.mdwn
Joey Hess 518a51a8a0
--explain for preferred/required content matching
And annex.largefiles and annex.addunlocked.

Also git-annex matchexpression --explain explains why its input
expression matches or fails to match.

When there is no limit, avoid explaining why the lack of limit
matches. This is also done when no preferred content expression is set,
although in a few cases it defaults to a non-empty matcher, which will
be explained.

Sponsored-by: Dartmouth College's DANDI project
2023-07-26 14:50:04 -04:00

75 lines
1.9 KiB
Markdown

# 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) can be used.
# SEE ALSO
[[git-annex]](1)
[[git-annex-preferred-content]](1)
[[git-annex-matching-expression]](1)
# AUTHOR
Joey Hess <id@joeyh.name>
Warning: Automatically converted into a man page by mdwn2man. Edit with care.