Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
BeholdFS is a tagging file system. EXAMPLE USAGE: Mount: $ ./beholdfs <rootdir> <mountpoint> Create a file with a set of tags: $ touch %tag1%tag2%tag3/file1 or $ touch %tag1/%tag2/%tag3/file2 or even $ touch %/tag1/%/tag2/%/tag3/file3 Add tags to a file: $ mv file1 %newtag or $ mv file2 %newtag1%newtag2 etc. Remove tags from a file: $ mv file1 %-notwantedtag or $ mv file2 %-tag1%-tag2 Add and remove tags at the same time: $ mv file3 %addtag%-removetag Add/remove tags, rename and move to a different directory: $ mv file4 dir/%moved%-here/file5 List files with a specific tag(s): $ ls %tag1%tag2 or $ ls %tag1/%tag2 etc. List files without a specific tag(s): $ ls %-tag1%-tag2 or $ ls %-tag1/%-tag2 etc. Directories are included in the %tag listing if at least one file under the directory has the %tag. Directories are excluded from the %-tag listing if all of the files under the directory have the %tag. This is still work in progress. Do not expect much. KNOWN PROBLEMS: - metadata (database file) is never deleted, so 'empty' directories cannot be removed TODO: - introduce explicit tags; files marked with such explicit tag won't show unless the tag is specified explicitly - introduce hidden tags; hidden tags are not visible in tag listing