pub struct Cli {Show 31 fields
pub directories: Vec<PathBuf>,
pub target: Option<PathBuf>,
pub deduplicate: bool,
pub delete: bool,
pub move_to: Option<PathBuf>,
pub log: bool,
pub log_file: Option<PathBuf>,
pub output: Option<PathBuf>,
pub format: String,
pub algorithm: String,
pub parallel: Option<usize>,
pub mode: String,
pub interactive: bool,
pub verbose: u8,
pub include: Vec<String>,
pub exclude: Vec<String>,
pub filter_from: Option<PathBuf>,
pub progress: bool,
pub progress_tui: bool,
pub sort_by: SortCriterion,
pub sort_order: SortOrder,
pub raw_sizes: bool,
pub config_file: Option<PathBuf>,
pub dry_run: bool,
pub cache_location: Option<PathBuf>,
pub fast_mode: bool,
pub media_mode: bool,
pub media_resolution: String,
pub media_formats: Vec<String>,
pub media_similarity: u32,
pub media_dedup_options: MediaDedupOptions,
}Fields§
§directories: Vec<PathBuf>The directories to scan for duplicate or missing files. When multiple directories are specified, the last one is treated as the target for copying missing files, unless –target is specified.
target: Option<PathBuf>Specifies the target directory for copying missing files or deduplication. Overrides the default behavior of using the last specified directory as target.
deduplicate: boolWhether to deduplicate between source and target directories instead of just copying missing files.
delete: boolAutomatically delete duplicate files.
move_to: Option<PathBuf>Move duplicate files to the specified folder.
log: boolWrite actions and errors to a log file.
log_file: Option<PathBuf>Specify a custom log file path.
output: Option<PathBuf>Write a file containing duplicate information.
format: StringOutput format for the duplicates file.
algorithm: StringHashing algorithm to use for comparing files.
parallel: Option<usize>Number of parallel threads to use for hashing. Defaults to auto-detected number of cores.
mode: StringMode for selecting which file to keep/delete in non-interactive mode.
interactive: boolFire up interactive TUI mode.
verbose: u8Verbosity level.
include: Vec<String>Include files matching the given glob pattern. Can be specified multiple times.
exclude: Vec<String>Exclude files matching the given glob pattern. Can be specified multiple times.
filter_from: Option<PathBuf>Read filter rules from a file (similar to rclone filter files).
progress: boolShow progress information during scanning/hashing.
progress_tui: bool§sort_by: SortCriterion§sort_order: SortOrder§raw_sizes: boolDisplay file sizes in raw bytes instead of human-readable format.
config_file: Option<PathBuf>Path to a custom config file. If provided, overrides the default ~/.deduprc file.
dry_run: boolRun in dry run mode - simulate actions without making actual changes.
cache_location: Option<PathBuf>Directory to store hash cache for faster scanning of previously scanned files
fast_mode: boolUse cached hashes for files that haven’t changed since last scan
media_mode: boolEnable media deduplication (images, videos, audio)
media_resolution: StringResolution preference for media deduplication
media_formats: Vec<String>Format preference for media files (comma-separated, highest priority first)
media_similarity: u32Similarity threshold for media deduplication (0-100)
media_dedup_options: MediaDedupOptionsMedia deduplication options (will be populated from above arguments)
Implementations§
Trait Implementations§
Source§impl Args for Cli
impl Args for Cli
Source§fn augment_args<'b>(__clap_app: Command) -> Command
fn augment_args<'b>(__clap_app: Command) -> Command
Source§fn augment_args_for_update<'b>(__clap_app: Command) -> Command
fn augment_args_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§impl CommandFactory for Cli
impl CommandFactory for Cli
Source§impl FromArgMatches for Cli
impl FromArgMatches for Cli
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§impl Parser for Cli
impl Parser for Cli
Source§fn parse_from<I, T>(itr: I) -> Self
fn parse_from<I, T>(itr: I) -> Self
Source§fn try_parse_from<I, T>(itr: I) -> Result<Self, Error>
fn try_parse_from<I, T>(itr: I) -> Result<Self, Error>
Source§fn update_from<I, T>(&mut self, itr: I)
fn update_from<I, T>(&mut self, itr: I)
Auto Trait Implementations§
impl Freeze for Cli
impl RefUnwindSafe for Cli
impl Send for Cli
impl Sync for Cli
impl Unpin for Cli
impl UnwindSafe for Cli
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more