---
name: "exifcom"
section: "1"
platform: "linux"
package: "exiftags"
version: "1.01-7"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/exifcom"
---

# exifcom(1)

display or set the UserComment tag contained in a JPEG Exif section

## NAME

**exifcom** - display or set the UserComment tag contained in a JPEG Exif section

## SYNOPSIS

**exifcom** \[ **-bfinv** \] \[ **-w** *comment* \] \[ **-s** *delim* \] *file ...*

## DESCRIPTION

When invoked without arguments, the **exifcom** utility displays the contents of the Exif UserComment tag contained in *file* to the standard output.  Otherwise, depending on the options specified, **exifcom** will blank the tag or set it to *comment*.

Some digital cameras include a standard UserComment tag in the Exif data added to the image files they produce.  This comment tag is fixed-length and supports multi-byte character sets (though **exifcom** does not).  Note that not all cameras will include the tag.

The utility is conservative in its approach to writing the UserComment tag. It does not modify, extend, or otherwise adulterate an image's Exif metadata structure.  When writing the tag it merely changes pre-allocated bytes.  Therefore, **exifcom** is at the mercy of the Exif data creator for both the presence of the tag and its length.  It cannot create a UserComment tag when the camera does not include one, nor can it write a comment longer than the space pre-allocated by the camera. **exifcom** only displays and writes ASCII character set comments.

## OPTIONS

- \-b

  Blank the UserComment tag, overwriting both the character code and comment fields with NUL.  The character code specifies how the comment is represented; it is "undefined" when blank.  This is the state to which many cameras initialize the tag.  When used in conjunction with the **-w** option, **exifcom** will blank the comment prior to setting it to *comment*.

- \-f

  Overwrite or blank existing or unsupported comments without prompting for confirmation.

- \-i

  Write a prompt to standard error before overwriting or blanking an existing or unsupported comment.  If the response from the standard input begins with 'y' or 'Y', the comment is overwritten.  This option is default behavior.

- \-n

  Do not overwrite or blank existing or unsupported comments and do not prompt for confirmation (i.e., automatically answer 'no' to a confirmation prompt).  This option takes precedence over both the **-f** and **-i** options.

- \-s

  Separate field name and value in the verbose and multiple file cases with the string *delim*. The default is ': '.

- \-v

  Be verbose when printing the contents of the UserComment tag.  Besides the comment itself (if present and supported), **exifcom** will display the maximum comment length supported, the character code of the comment, and the length of the comment.

- \-w

  Set UserComment to the ASCII string *comment*. If *comment* is longer than what the tag supports, it will be truncated to fit.

## DIAGNOSTICS

The **exifcom** utility exits 0 on success.  When displaying a comment from a single file, if the UserComment tag is missing, it exits 1; if blank, it exits 2; if in an unsupported character code, it exits 3.  Otherwise, it exits 1 if an error occurs.

## SEE ALSO

[exiftags(1)](/exiftags/1.md), [exiftime(1)](/exiftime/1.md)

## STANDARDS

The **exifcom** utility was developed using the January 2002 Exif standard, version 2.2 (http://tsc.jeita.or.jp/).

## BUGS

If the tag doesn't exist or is too short, too bad.

## AUTHOR

The **exifcom** utility and this man page were written by Eric M. Johnston \<emj@postal.net\>.
