igir takes actions based on commands you specify. Each command has a clear input and output, and
igir will never take surprise actions you did not specify. Multiple commands can (and will likely) be specified at once.
igir --help message for the list of all commands and options, as well as some examples.
igir has three writing commands. Only one writing command can be specified at a time, and all require the
--output <path> option.
Copy ROMs from an input directory to the output directory.
Files in the input directories will be left alone, they will not be modified or deleted.
Move ROMs from an input directory to the output directory. The same directory can be specified for both input & output, resulting in ROMs being renamed as their names change in DATs.
ROMs will be deleted from their input directory after all ROMs for every DAT have been written.
Create a link in the output directory to a ROM in the input directory.
By default, hard links are created, similar to ln(1). Use the
--symlink option to create symbolic links.
igir has two ROM archive commands. Archive commands require either the
move write command. Only one archive command can be specified at a time.
If no archive command is specified, files will be left as-is. If they are already extracted, then they will stay extracted. If they are already archived (including non-
.zip archives), then they will stay archived.
See the archives page for more information on supported archive types.
ROMs will be extracted from archives as they are being copied or moved. ROMs from the same game will be placed into a subdirectory together.
Input ROMs that are not archived will be copied as-is.
ROMs will be archived into a
.zip file as they are being copied or moved. ROMs from the same game will be put into the same
ROMs that are already in an archive will be re-archived.
After performing one of the ROM writing commands, verify that the file was written correctly.
extract testtests that each ROM file written has the correct size & checksum
zip testtests that the
.zipfile has all the correct archive entry sizes & checksums, and contains no excess entries
Files in the output directory that do not match any ROM in any DAT will be deleted.
See the output cleaning page for more information.
A report will be generated of what input files were matched by what DAT, and what games in what DATs have missing ROMs.
See the reporting page for more information.