LinuxCommandLibrary

exif

Read and write image's EXIF metadata

TLDR

Show all recognized EXIF information in an image

$ exif [path/to/image.jpg]
copy

Show a table listing known EXIF tags and whether each one exists in an image
$ exif [[-l|--list-tags]] --no-fixup [path/to/image.jpg]
copy

Extract the image thumbnail into a separate file
$ exif [[-e|--extract-thumbnail]] [[-o|--output]] [path/to/thumbnail.jpg] [path/to/image.jpg]
copy

Show the raw contents of the "Model" tag in the given image
$ exif --ifd [0] [[-t|--tag]] "Model" [[-m|--machine-readable]] [path/to/image.jpg]
copy

Change the value of the "Artist" tag to John Smith and save to new.jpg
$ exif [[-o|--output]] [path/to/new.jpg] --ifd [0] [[-t|--tag]] "Artist" --set-value "John Smith" --no-fixup [path/to/image.jpg]
copy

SYNOPSIS

exif [options] imagefile ...

PARAMETERS

-m
    Make, Model and DateTime as comment

-t TAG
    Show only TAG. TAG can be a numerical tag (e.g. 0x010f) or a descriptive tag (e.g. ImageDescription).

-s string
    grep for string, case insensitive

-d
    Delete Exif information from file

-i file
    Write an info file instead of stdout

-l
    Long listing. Shows even the unknown tags.

-c file
    Compare two files. Reads two filenames. If none is given, the first will be compared to stdout. This will show different tags.

-p
    Pack the information to one line.

-w file
    Write an info file instead of stdout (identical -i)

-v
    Verbose mode. Prints more information.

-vv
    More verbose mode.

-version
    Show the version and exit.

imagefile ...
    One or more image files to process.

DESCRIPTION

The exif command is a command-line utility used to extract Exif (Exchangeable Image File Format) data from digital images, typically JPEGs and TIFFs. Exif data contains metadata embedded within the image file, providing information about the image itself, such as camera settings (aperture, shutter speed, ISO), date and time the image was taken, GPS coordinates (if enabled), camera model, and more.

By extracting this metadata, users can gain insights into the circumstances under which an image was created, organize and categorize images, and even potentially identify the camera used to take the photograph. The exif command provides a straightforward way to access this valuable information from the command line, enabling scripting and automation of metadata analysis and management. It is a valuable tool for photographers, forensics analysts, and anyone who needs to work with image metadata.

CAVEATS

The exif command's effectiveness is dependent on the presence of Exif data within the image files. Not all images contain Exif data, and some images may have incomplete or inaccurate data. Additionally, the exif command itself might not support every possible Exif tag, particularly for newer or less common camera models.

RETURN VALUE

The program returns 0 if no errors are found. Else it will return a value greater than 0.

HISTORY

The exif command has been available on Linux and Unix-like systems for a long time. The primary motivation for developing exif was the need to extract and utilize the metadata embedded within digital images. The command has evolved over time to support a wider range of Exif tags and to improve its robustness and ease of use. It is widely used by photographers, forensic analysts, and others who work with digital images.

SEE ALSO

identify(1), convert(1), jhead(1)

Copied to clipboard