Searching is trivial:
-* there is no actual searching, just a streaming through all the
- database file sequentially
-* if some root is specified, then the program will output only its
- hierarchy path, exiting after it is finished
+* searching is performed on each record streamed from the database
+* if -root is specified, then search will stop after that hierarchy part
+ is over
+* by default all elements are printed, unless you provide a single
+ argument that becomes "*X*" pattern matched on case-lowered path
+ elements
Updating algorithm is following:
$ glocate -db /tmp/glocate.db -tree
[beauty tree-like list of files with sizes and mtimes]
- $ glocate -db /tmp/glocate.db some/sub/path
- [just a part of the whole hierarchy]
+ $ glocate -db /tmp/glocate.db -root music
+ [just a music hierarchy path]
-and update it carefully:
+ $ glocate -db /tmp/glocate.db -root music blasphemy | grep "/$"
+ music/Blasphemy-2001-Gods_Of_War_+_Blood_Upon_The_Altar/
+ music/Cryptopsy-1994-Blasphemy_Made_Flesh/
+ music/Infernal_Blasphemy-2005-Unleashed/
+ music/Ravenous-Assembled_In_Blasphemy/
+ music/Sect_Of_Execration-2002-Baptized_Through_Blasphemy/
+ music/Spectral_Blasphemy-2012-Blasphmemial_Catastrophic/
+
+and update it carefully, providing the strip prefix to -update:
$ zfs snap big@snap2
- $ zfs diff -FH big@snap2 | glocate -db /tmp/glocate.db -strip /big/ -update
+ $ zfs diff -FH big@snap2 | glocate -db /tmp/glocate.db -update /big/
glocate is copylefted free software: see the file COPYING for copying
conditions.