bagheera [options] query [--recursive [query]] [options] options: -a | --date Date filter. Format year[-month[-day]] -d | --directory Base directory to execute main query. -h | --help [help] Print help. Optional help parameter can be 'attributes', 'dates', 'examples', 'having', 'query', 'recursive' or 'types'. -g | --having Results not matching expression are ignored. -i | --ids Add file ID prior to file name. -l | --limit Maximum number of results to print. -o | --offset Offset to first result to print. -r | --recursive [query] Enable directory results recursion. An optional query for recursive results could be used. -e | --recursive-depth Maximun directory recursion depth. -c | --recursive-having Recursive results not matching expression are ignored. -y | --recursive-type File type filter for recursive results, use --help types to obtain information about available types. -t | --silent Print basic info only, aka only print summary. -s | --sort < sort [ < ASC | DES > ] > Sort obtained results, by default results are not sorted. Sort types available are: automatic, date, default and name. -t | --type File type filter for results, use --help types to obtain information about available types. -v | --verbose More verbosity. --version Print version information. Remarks: · query searchs only for independent words with size greather than 3, even if phrase is quoted or double quoted. · having filters only in results obtained by queries, but supports quoted or double quoted phrases and is not limited by word size. · the NOT logical operator has a high processing and memory cost, so it is preferable to limit its use. · compare two attributes is possible but is more expensive than compare a constant value. The same remark with NOT applies here. · recursive mode recurse over all directories found, but without a recursive query, or recursive-depth param, could obtain many results if there are many trees and leafs in directory arborescence. · when there are duplicate parameters only last parameter value is used and previous parameter values are ignored. · sort parameter must process all results first, so there is a performance impact that depends on the size of the result set. Syntax reference: query :== | [ NOT ] ( ) expression :== [ NOT ] [ [ < AND | OR > ] [ NOT ] ] ::= | ::= | | ::= | [ [ comp_value ] ] | | ::= ::= ::= | ::= | | | | ::= album | albumartist | artist | author | composer | lyricist | height | person | title | width | ... ::= aaaammdd | aaaa-mm-dd | dd-mm-aaaa | dd/mm/aaaa | [ + | - ] [ d | m | w | y ] ::= ::= [ . ] ::= <1..10> ::= < | [ ] | [ ] >... ::= < any utf-8 character except or > ::= < any utf-8 character except > ::= < any utf-8 character except > ::= < > ::= < > ::= <'> ::= <"> ::= = | : | != | <> | >= | <= | > | < ::= MODIFIED < TODAY | YESTERDAY | LAST [date_length] | [date_length] AGO > ::= | ONE | TWO | THREE | ... ::== DAYS | DAY | MONTHS | MONTH | WEEKS | WEEK | YEARS | YEAR ::= LANDSCAPE | PORTRAID | SQUARE ::= | [ NOT ] ( ) ::= [ NOT ] [ [ < AND | OR > ] [ NOT ] ] ::= | |