EXIFTRAN(1)
β¨ EXIFTRAN(1) β¨
okay bestie, gather round, because this is the manual page for exiftran, section 1 of the manuals, and it is lowkey the most useful little utility for your digital camera pics. version 2.09, babes. let's get into it π
π¦ NAME π¦
exiftran β transform digital camera jpeg images
πΈ SYNOPSIS πΈ
exiftran [options] file1 file2 ... fileN
exiftran -i [transform options] [others options] file1 file2 ... fileN
exiftran -o outputfile [transform options] [other options] inputfile
exiftran -d file1 file2 ... fileN > exifinfo
π DESCRIPTION π
so. exiftran is a command line utility that transforms digital camera jpeg images. it does lossless rotations just like jpegtran(1), no cap, no quality lost β but unlike jpegtran(1) it actually cares about the EXIF data. the way that it:
- can rotate images automatically by checking the exif orientation tag
- updates the exif informations when needed (image dimension, orientation)
- also rotates the exif thumbnail
and yeah, it can process multiple images at once. main character energy fr fr. β¨
π TRANSFORM OPTIONS π
these are the ones that actually spin your pics around, bestie:
-aβ automatic mode, using the exif orientation tag. it just knows.-9β rotate by 90 degrees clockwise.-1β rotate by 180 degrees clockwise.-2β rotate by 270 degrees clockwise.-fβ mirror image vertically (top / bottom).-Fβ mirror image horizontally (left to right).-tβ transpose (across UL-to-LR corner).-Tβ transverse (across UR-to-LL corner).-ntβ don't transform exif thumbnail.-niβ don't transform jpeg image. you might need this one, or the-ntoption, to fixup things in case you transformed the image with some utility that ignores the exif thumbnail. just generating a new thumbnail with-gis another way to fix it π«Ά-noβ don't update the orientation tag. by defaultexiftransets the orientation to"1"(no transformation needed) so other exif-aware applications don't try to rotate the already-rotated image again. imagine the chaos π-npβ don't pare lost edges. by defaultexiftrandon't preserve image size of the images that do not meet a multiple of 8 pixels. he prefers to cut a strip of a few pixels rather than offering a damaged image. use this option if you want them all the same.
π OTHER OPTIONS π
-hβ print a short help text.-dβ dump exif data for the file(s).-ctext β set jpeg comment tag to text.-gβ (re)generate exif thumbnail.-ofile β specify output file. only one input file is allowed in this mode, bestie, don't push it.-iβ enable in-place editing of the images.exiftranallows multiple input files then. you must specify either this option or a output file with-ofor all operations which modify the image (i.e. everything but-dright now).-bβ create a backup file when doing in-place editing (imply-i).-pβ preserve timestamps (atime + mtime) when doing in-place editing (imply-i).
π EXAMPLES π
autorotate all jpeg files in the current directory:
exiftran -ai *.jpeg
slay. that's it. that's the whole vibe check. β¨
π§ SEE ALSO π§
exif(1), exiftags(1), jpegtran(1)
π AUTHOR π
Gerd Hoffmann <gerd@kraxel.org>
π COPYRIGHT π
Copyright (c) 2002-2012 Gerd Hoffmann <gerd@kraxel.org>
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
no cap, that warranty disclaimer is not a joke β it's giving very serious legal energy, so read it twice bestie π
okay and that's the whole page!! this was EXIFTRAN 2.09, copyright (c) 2002-2012 Gerd Hoffmann, section 1 of the manual. tysm for reading, go rotate something π πβ¨
π¦ where this page comes from
- alpine 3.24: fbida-doc 2.15-r0 Β· GPL-2.0-only
- arch rolling: fbida 2.14-6 Β· GPL2
- debian bookworm: exiftran 2.10-4+b1
- fedora 43: fbida 2.14-19.fc41 Β· GPLv2+
- fedora 43: fbida 2.15-1.fc43 Β· GPL-2.0-or-later
- fedora 44: fbida 2.15-1.fc44 Β· GPL-2.0-or-later
- nixos 26.05: fbida 2.15-1
- nixpkgs unstable: fbida 2.15-1
- opensuse-leap 16.0: exiftran 2.14-bp160.1.12 Β· LGPL-2.1-or-later
- opensuse-leap 16.0: exiftran 2.14-bp160.1.12 Β· LGPL-2.1-or-later
- opensuse-leap 16.0: exiftran 2.14-bp160.1.12 Β· LGPL-2.1-or-later
- opensuse-leap 16.0: exiftran 2.14-bp160.1.12 Β· LGPL-2.1-or-later
- ubuntu jammy: exiftran 2.10-4ubuntu1
- ubuntu noble: exiftran 2.10-4ubuntu4
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms