gotdoops

command module
v0.0.0-...-3b8a8c0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 14, 2016 License: MIT Imports: 12 Imported by: 0

README

gotdoops

quick and dirty script that detects duplicate image files and generates an html report with a list of duplicates.

intentions

I built this for my wife who wanted a way to easily identify duplicate images on our growing collection of pictures. Plus, it was an excuse to write something new in Go. =)

how it works

Running this utility on a directory of images will do the following:

  • Recursively scan the directory looking for image files (currently only jpegs)
  • Add each image file path to a map of slices with the filesize as the key looking for potential duplicates
  • MD5 hash all files that have the same filesize looking for true duplicates
  • Generate thumbnails of all found duplicates
  • Generate an HTML report allowing for filtering on particular folder
  • Other than scanning for files and generating a report this command line app DOES NOT attempt to delete, rename or move files around. It is purely designed to yield a report for further analysis currently.

future improvements

  • Enhance to run in parallell with Go's awesome goroutine/channels
  • Enhance to work on additional image types or even any file type
  • Modify to use Go's template library (should have started with this, but was lazy)
  • Enhance with command line options as necessary
  • Add unit-tests

usage

//To install
go get github.com/deckarep/gotdoops

//Then open up a command line and run the following:
go run gotdoops.go [folder/with/images]

imports

  • github.com/deckarep/golang-set
  • github.com/nfnt/resize

contributions

Are absolutely welcome and encouraged!

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL