Aiursoft.NiBot 8.0.9

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global Aiursoft.NiBot --version 8.0.9                
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local Aiursoft.NiBot --version 8.0.9                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Aiursoft.NiBot&version=8.0.9                
nuke :add-package Aiursoft.NiBot --version 8.0.9                

NiBot

MIT licensed Pipeline stat Test Coverage NuGet version ManHours

A cli tool helps you to de-duplicate images in a folder.

Suppose you enjoy collecting images and intensively gather a large number of them from various websites to your hard drive every day. Soon, your hard drive accumulates tens of thousands of CG images with different sources and resolutions.

However, you discover that a significant portion of these downloaded CG images are duplicates, occupying precious disk space. Therefore, you urgently need a fast method to identify and remove duplicates from your CG directory. Since the sources of these downloads vary, traditional methods such as searching by file names are clearly inadequate for solving this problem; it's necessary to analyze the content of the images.

Install

Run the following command to install this tool:

dotnet tool install --global Aiursoft.NiBot

Usage

After getting the binary, run it directly in the terminal.

$ NiBot dedup
Option '--path' is required.

Description:
  De-duplicate images in a folder.

Usage:
  NiBot dedup [options]

Options:
  -p, --path <path> (REQUIRED)                  Path of the folder to dedup.
  -ds, --duplicate-similar <duplicate-similar>  Similarity bar. Default is [96]. This value means two image are considered as duplicates if their similarity is greater than it. Setting too small may cause different images
                                                to be considered as duplicates. Suggested values: [96-100] [default: 96]
  -r, --recursive                               Recursively search for similar images in subdirectories. Default is [false]. [default: False]
  -k, --keep <keep>                             Preference for sorting images by quality to determine which to keep when duplicates are found. Default is [Colorful,HighestResolution,Largest,Newest]. Available options:
                                                Newest, Oldest, Smallest, Largest, HighestResolution, LowestResolution. [default: Colorful|HighestResolution|Largest|Newest]
  -a, --action <Delete|MoveToTrash|Nothing>     Action to take when duplicates are found. Default is [Nothing]. Available options: Nothing, Delete, MoveToTrash, MoveAndCopyOriginalToTrash. [default: Nothing]
  -i, --interactive                             Interactive mode. Ask for confirmation before deleting files. Default is [false]. [default: False]
  -e, --extensions <extensions>                 Extensions of files to dedup. Default is [jpg,jpeg,png,jfif]. [default: jpg|jpeg|png|jfif]
  -v, --verbose                                 Show detailed log
  -?, -h, --help                                Show help and usage information

It will fetch all images in the folder and compare them with each other. If two images are similar enough, it will consider them as duplicates.

It will pick the best one based the --keep option. If the --action is set to Delete, it will delete the rest of the duplicates. If the --action is set to MoveToTrash, it will move the rest of the duplicates to the trash.

With the --interactive option, it will preview each photo and ask for confirmation before deleting files.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
8.0.33 75 11/12/2024
8.0.31 88 11/2/2024
8.0.30 85 10/10/2024
8.0.29 84 10/7/2024
8.0.28 87 10/7/2024
8.0.27 121 7/12/2024
8.0.26 91 7/9/2024
8.0.25 84 7/9/2024
8.0.24 95 7/8/2024
8.0.23 87 7/8/2024
8.0.21 106 7/6/2024
8.0.20 94 7/4/2024
8.0.19 89 7/3/2024
8.0.18 100 7/3/2024
8.0.17 97 7/3/2024
8.0.16 100 7/3/2024
8.0.15 91 7/3/2024
8.0.14 82 7/3/2024
8.0.13 110 6/29/2024
8.0.12 107 6/28/2024
8.0.11 104 6/27/2024
8.0.10 100 6/27/2024
8.0.9 140 6/26/2024
8.0.8 130 6/26/2024
8.0.7 121 6/26/2024
8.0.6 95 6/26/2024
8.0.5 109 6/26/2024
8.0.3 84 6/26/2024
8.0.2 102 6/26/2024
0.0.5 304 7/20/2023
0.0.4 192 5/17/2023