pub enum Command {
Group(GroupConfig),
Link {
config: DedupeConfig,
soft: bool,
},
Dedupe {
config: DedupeConfig,
},
Remove(DedupeConfig),
Move {
config: DedupeConfig,
target: PathBuf,
},
Complete {
shell: Shell,
},
}Variants§
Group(GroupConfig)
Produce a list of groups of identical files.
Scans the given directories recursively, computes hashes of files and groups files with the same hash together. Writes the list of groups of files to the standard output, unless the target file is specified. This command is safe and does not modify the filesystem.
Link
Replace redundant files with links.
The list of groups earlier produced by fclones group should be submitted
on the standard input.
Unless --soft is specified, hard links are created.
Creating hard links to files on different mount points is expected to fail.
Dedupe
Deduplicate file data using native filesystem deduplication capabilities.
The list of groups earlier produced by fclones group should be submitted
on the standard input.
After successful deduplication, all file clones would still be visible as distinct files,
but the data would be stored only once, hence taking up possibly less space than before.
Unlike with hard links, modifying a file does not modify any of its clones.
The result is not visible to userland applications, so repeated runs
will find the same files again. This also applies to fclones dedupe itself:
The options --priority and --rf-over do not detect earlier deduplications.
This command cannot cross file system boundaries. Not all file systems support deduplication. Not all metadata is preserved on macOS. Unsupported on Windows.
Fields
config: DedupeConfigRemove(DedupeConfig)
Remove redundant files.
The list of groups earlier produced by fclones group should be submitted
on the standard input.
Move
Move redundant files to the given directory.
The list of groups earlier produced by fclones group should be submitted
on the standard input.
Fields
config: DedupeConfigComplete
Print shell completion script to stdout.
Implementations§
Trait Implementations§
Source§impl FromArgMatches for Command
impl FromArgMatches for Command
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<'b>(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§impl Subcommand for Command
impl Subcommand for Command
Source§fn augment_subcommands<'b>(__clap_app: Command) -> Command
fn augment_subcommands<'b>(__clap_app: Command) -> Command
Source§fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§fn has_subcommand(__clap_name: &str) -> bool
fn has_subcommand(__clap_name: &str) -> bool
Self can parse a specific subcommandAuto Trait Implementations§
impl Freeze for Command
impl RefUnwindSafe for Command
impl Send for Command
impl Sync for Command
impl Unpin for Command
impl UnwindSafe for Command
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> 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