Command-line tool
What it is
everyfile-cli is the same search engine as the app, as a program for the Terminal. With --json it prints the results as JSON, so scripts and other tools can use them. It ships inside the app, in the folder Everyfile.app/Contents/Resources/bin.
The query language is the same as in the app; see the search syntax.
Honest status
- Early version. It is built into the download from this release on; the command line is not a polished product yet.
- It does not use the index the app keeps. Every call scans the folder or volume you give with
--volume, so a large volume takes a moment each time.
- Read only: it searches and prints, it never changes or deletes files.
- The tool also contains developer commands (benchmarks, index tests). Only
searchis meant for you.
Usage
everyfile-cli search "remix ext:mp3" --volume ~/Music --json --limit 20 --sort date --desc--volume <path>: what to search. Required. Can be given more than once.
--limit N: at most N results (default 50).
--sort name|size|dateand--desc: order of the results.
--junk: include system junk such as.DS_Store(hidden by default).
--json: JSON output (Pro).
Without --json the tool prints one line per result (type, size, path) and the number of hits. That plain output is free.
JSON output
Real output of the tool for a small test folder. modified is Unix time in seconds, size is in bytes, kind is file or folder. total is the number of matches, shown the number of entries in results (limited by --limit).
{
"query" : "remix ext:mp3",
"results" : [
{
"kind" : "file",
"modified" : 1793041268,
"name" : "Night Remix.mp3",
"path" : "/Users/me/Music/Night Remix.mp3",
"size" : 3
},
{
"kind" : "file",
"modified" : 1793041268,
"name" : "Summer Remix.mp3",
"path" : "/Users/me/Music/Summer Remix.mp3",
"size" : 0
}
],
"shown" : 2,
"total" : 2
}Install
The tool is not installed for you. If you want to call it as everyfile-cli from anywhere, link it once (this needs your administrator password):
sudo ln -s /Applications/Everyfile.app/Contents/Resources/bin/everyfile-cli /usr/local/bin/everyfile-cliTo remove the link again:
sudo rm /usr/local/bin/everyfile-cliIf you put Everyfile somewhere other than the Applications folder, change the path in the first command.
Pro
JSON output needs an Everyfile Pro license, checked offline with the same key as the app. The tool reads the key you entered in the app. For a machine without the app settings, set the key in the environment variable EVERYFILE_LICENSE. Without a valid key, search --json stops with an error and exit code 3.
Questions or something missing? hello@everyfile.app