Operations ---------- # Mount the filesystem: $ cbtagfs -f Example: cbtagfs -f ~/.cbtagfs /tags If you don't want to use SQLite, you can pass in a DBI string: $ cbtagfs -d DBI:mysql:database=mydatabase;host=localhost:port=3306 # Index a new file: $ ln -s Example: ln -s /pictures/cat.jpg /tags # Create a tag: $ mkdir / Example: mkdir /tags/meme # Delete a tag: $ rmdir / Example: rmdir /tags/meme # Add a tag to a file: $ cd $ mv Example: mv /tags/cat.jpg /tags/meme # Remove a tag from a file: $ rm // Example: rm /tags/meme/cat.jpg This doesn't have to be done at the toplevel directory of the filesystem; only the right-most tag will be removed from the path: $ rm /tags/pictures/funny/meme/cat.jpg ...will only remove the tag "meme". This is to make it easier if your current working directory is deep within the filesystem, you don't necessarily want to remove all of the tags you're viewing currently. The above is equivalent to: $ cd /tags/pictures/funny/meme $ rm cat.jpg # Query tags: $ ls ///.../ Example: ls /tags/pictures/funny/family/ This will search for all files that contain the tags "pictures" AND "funny" AND "family". Note: Ordering of tags does not matter. # Remove a file from the index entirely: $ rm / Example: rm /tags/cat.jpg This must be done at the toplevel directory of the mounted filesystem, or the operation will only remove tags (as above example) instead. # Unmount filesystem: $ fusermount -u Example: fusermount -u /tags