LinuxCommandLibrary
GitHubF-DroidGoogle Play Store

tmsu

Tag-based file organization system

TLDR

Tag files
$ tmsu tag [file] [tag1] [tag2]
copy
List tags
$ tmsu tags
copy
Find by tag
$ tmsu files [tag]
copy
Find by multiple tags (boolean query)
$ tmsu files [tag1] and [tag2]
copy
Untag file
$ tmsu untag [file] [tag]
copy
Mount virtual filesystem organized by tags
$ tmsu mount [mountpoint]
copy
Show tags for a specific file
$ tmsu tags [file]
copy
Check status of tagged files
$ tmsu status
copy

SYNOPSIS

tmsu command [options] [args]

DESCRIPTION

tmsu (Tag My Stuff Unix) is a file tagging tool that lets you organize files by assigning arbitrary tags rather than relying solely on directory hierarchies. Tags and file associations are stored in a local SQLite database, keeping the actual files untouched.Files can be queried using tag-based expressions with boolean operators (and, or, not), making it easy to find files matching specific criteria. The mount command provides a FUSE virtual filesystem where tagged files appear organized into directories by tag, enabling integration with standard file management tools.

PARAMETERS

tag

Add tags to files or directories.
tags [file]
List all tags, or list tags for a specific file.
files query
Query files matching tag expressions (supports and, or, not).
untag
Remove tags from files.
mount mountpoint
Mount a FUSE virtual filesystem organized by tags.
rename old new
Rename a tag.
delete tag
Delete a tag and all its file associations.
merge tags target
Merge multiple tags into a single tag.
status
List file tagging status (tagged, modified, missing).

CAVEATS

FUSE needed for mount. Database per directory. Go-based tool.

HISTORY

TMSU (Tag My Stuff Unix) was created for file organization using tags with optional FUSE filesystem support.

SEE ALSO

find(1), locate(1)

Copied to clipboard
Kai