Syntax: lspace-scan ?options? /path/to/scan-database @ | path... |
---|
This application scans a set of paths and recursively enumerates all files it finds in any directory hierarchy.
Note: Using the special path @
causes the application to read the
paths to scan from standard input.
It checks the enumerated files against a database holding the state from the previous scan and prints a stream of paths and their uuids which contains only the paths which are new or changed since the last scan.
The state database is updated as part of the operation.
The available options and their effects are:
-q
,--quiet
Normally the application prints progress reports to standard error. This is disabled with use of these options.
-f
,--force
Using these options causes the application to not check for changes and simply print all paths with their uuid. In that mode the database is not updated eiter.
-x pattern
,--exclude pattern
Any path matching any of the regex patterns specified via one or more of these options is excluded from the output, before checking for changes and the like.
lspace-scan-state
Syntax: lspace-scan-state ?options? ?/path/to/scan-database?
This application prints the current state of the scan database.
The available options and their effects are:
-t
,--time
-i
,--id
-u
,--uuid
Print the state sorted by modification time, row id, or file uuid. By default the state is printed sorted by path name.
-r
,--reverse
Print the state in reverse order, per the chosen sort column, see above.
-n N
,--limit N
Print only
N
elements of the state.
Scan database
If the scan database is specified as the empty string, or as -
then
the environment variable [LSPACE_SCAN](ev.md)
is consulted. If this
environment variable does not exist, or is empty, then the default
scan database at $HOME/.local/lspace/scan.sqlite
is used.