Sort files based on IMDB data
CoffeeScript HTML Other
Switch branches/tags
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

This version is no longer being supported. It has been rewritten in Go and can be found here


Sort files based on IMDB data


  1. Install Node.js

  2. npm install -g imdb-sort

  3. cd my-messy-movie-folder

  4. imdb-sort

Note: On first run a setup wizard will run prompting you to create the configuration file below. Default location is ~/.imdb-sort/config.json

Help Output

Organises Movies and TV Shows using IMDB
Usage: imdb-sort [options]

  -c, --config          Path to 'imdb-sort.json' configuration file             [default: "~/.imdb-sort/config.json"]
  -d, --directory       The directory to scan                                   [default: <CURRENT DIR>]
  -r, --recursive       Recursive depth (default: current directory)            [default: 1]
  -f, --filter          Process filepaths matching this regular expression      [default: null]
  -i, --inverse-filter  Process filepaths not matching this regular expression  [default: null]
  -w, --watch           Watch directory for changes
  -p, --preview         Dry run only (will not move any files)
  -s, --setup           Setup wizard to create or edit the default config
  --debug               Debug mode

*Note: If you specify -r without a depth; 3 will be used.


Here is my generated config.json using default settings

  "replaceExisting": false,
  "tvShows": {
    "root": "/Volumes/jpillora/Movies/TV Shows",
    "fileName": "{{ Title }} - Season {{ Season }} Episode {{ Episode }}",
    "directoryPerShow": true,
    "showName": "{{ Title }}",
    "directoryPerSeason": false,
    "seasonName": "Season {{ Season }}"
  "movies": {
    "root": "/Volumes/jpillora/Movies/Movies",
    "fileName": "{{ Title }} ({{ Year }})"

Naming Files and Directories

Inside your configuration, fileName, showName and seasonName can be used to customise your naming styles.

Usable template keys are: Title,Year,Season,Episode,Rated,Released,Runtime,Genre,Director,Writer,Actors,Plot,Poster,imdbRating,imdbVotes,imdbID,Type

Known Issues

  • It is possible to get temporarily blocked by Google for sending too many requests.
  • imdb-sort decides if a file is TV series or Movie depending on whether it can find season and episode numbers. Please post an issue if a TV series file is found to be a movie.


  • Modify metadata
  • Episode names
  • Lazy match on subtitles file


The source is CoffeeScript

  • Get deps with npm install
  • Compile with npm start
  • For testing, make a symbolic link with ln -s ./bin/imdb-sort [a-folder-in-your-PATH]