Independent Filee Wiki · Practical answers, with sourcesDocumentation checked · 19 OCT 2026
filee/ wiki
05 / AUTOMATE

Filee command line: batch conversion and watch folders

Convert a sample first, then make the output directory and collision policy explicit before running a batch.

On this page

Verify the command before writing a script

Filee's command line uses the same engines and presets as the app. On Windows, Setup has an option to add filee to PATH. Open a new terminal after installation and run:

filee version
filee help convert

If the command is missing, rerun the official installer with its PATH option or use the documented portable executable filee-cli.exe from the Filee folder. The app does not have to be open. The repository also says install.sh adds the command on macOS and Linux; consult the installed help for your package.

The examples below are adapted from the official CLI documentation. They describe expected commands, not a benchmark or a conversion log produced by this wiki.

Convert one image into a separate folder

filee convert photo.heic --to jpg -o converted

Replace the example filename with a real file and run the command from its directory, or supply the correct path. The target jpg selects the format and -o converted chooses a separate output folder. Without -o, ordinary convert results are saved beside their sources.

Open the output image before moving on. Inspect orientation, dimensions, color and the detail that matters for its intended use. An available conversion route still depends on a readable input and the necessary engines.

Run a batch with a deliberate collision policy

filee convert *.png --to webp --quality 80 -o converted

This official example selects PNG files and creates WebP outputs at quality 80. The quality option accepts 1 through 100 for supported lossy image formats; it is not a promise of a particular file size. Inspect a sample at the intended viewing size.

By default, Filee adds a number when an output filename already exists. --skip leaves existing outputs alone. --overwrite replaces them. Choose deliberately and avoid overwrite until you have a backup and have checked the sample output. Use --keep-dates if your workflow requires the converted files to retain the sources' created and modified dates.

For folders, --recursive includes subfolders. First point it at a small test tree so that you can check which files match and where outputs land. Quoting and wildcard expansion can depend on the terminal you use; inspect the installed command's help if a path with spaces is not being read as one argument.

Discover formats and presets

filee formats heic
filee presets

The formats command describes what an input can become, including optional-engine routes. The presets command shows IDs and names from the application's presets. You can use --preset instead of --to when a configured preset captures the settings you need.

Check formats and engines when a route is shown but the required engine is absent. A script does not bypass that engine requirement.

Watch a Windows inbox

filee watch D:\Inbox --to pdf --move-originals

This official Windows example runs until Ctrl+C. Watch output goes into D:\Inbox\converted by default, which differs from ordinary convert's beside-the-source default. With --move-originals, successfully converted source files move into D:\Inbox\originals, and files already waiting in the inbox are processed at startup.

Test in a disposable folder before enabling this on a working inbox. The flag changes where originals live. Without that flag, do not assume the same startup behavior. The app also has a Watch folders page for choosing a folder and preset while Filee runs in the tray.

The documented watcher waits until a file is complete, stable and no longer open in another program. It ignores temporary or hidden files and unsupported formats. --settle controls the stability interval; its default is two seconds. These protections do not replace checking the converted document.

Read the result in automation

Add --json to convert for a structured result. Inspect individual file states and outputs as well as the process exit code. The official meanings are: 0 for no failures, 1 for some files failing, 2 for argument, format, preset or missing-input problems, and 3 when there is nothing to convert.

Do not treat a partial batch as wholly successful, and do not delete sources merely because one output exists. Keep errors with the file and chosen route, then use troubleshooting for the failing case.

Adapt early Reddit advice to the current CLI

A launch-thread user asked for a CLI or a way to point Filee at a folder. The initial developer reply said GUI-only; current Filee has convert, watch, formats and presets. Treat the old reply as history, not a current limitation. The current CLI reference is the source for accepted flags.

Filee expands wildcards itself. Quote paths with spaces, for example "D:\Photo inbox"; do not solve a missing path by adding undocumented flags. A whole-folder convert and a GUI folder drop are also different: see folder traversal versus archiving.

Keep a batch log you can act on

The JSON result includes converted, skipped, failed and per-file states and output paths. A zero-failure exit code does not prove visual fidelity; use it to decide whether to inspect failures, then separately check the outputs that matter.

The official PowerShell example can be adapted as follows:

$result = filee convert "D:\Exports\*.png" --to webp --json | Out-String | ConvertFrom-Json
$conversionExit = $LASTEXITCODE
$result.files | Where-Object state -eq 'failed' |
  ForEach-Object { "$($_.source): $($_.error)" }

This is an adapted documentation example, not a log from this wiki. Preserve the exit status before running another native process that could replace it. Treat names, full paths and error details as potentially private when sharing a log. Keep success counts separate from a human check that a converted document is actually usable.

Sources for this guide