Make root directory a flag.
This commit is contained in:
parent
3a61e15449
commit
318ce583ea
23
src/main.rs
23
src/main.rs
@ -179,6 +179,13 @@ enum Command {
|
||||
about = "Tool for pruning extra videos in collection"
|
||||
)]
|
||||
struct SuperDeduper {
|
||||
#[structopt(
|
||||
short = "r",
|
||||
long = "root",
|
||||
help = "Root directory to store files.",
|
||||
default_value = MOVIE_DIR,
|
||||
)]
|
||||
root: String,
|
||||
#[structopt(
|
||||
short = "v",
|
||||
help = "Sets the level of verbosity",
|
||||
@ -206,14 +213,14 @@ fn main() -> Result<(), Box<dyn Error>> {
|
||||
|
||||
match app.cmd {
|
||||
Command::Samples => {
|
||||
let lib = MovieLibrary::new(MOVIE_DIR);
|
||||
let lib = MovieLibrary::new(app.root);
|
||||
let videos = lib.videos()?;
|
||||
|
||||
let samples_re = Regex::new(r"(?i).*sample.*").unwrap();
|
||||
print_videos(&videos, Some(&samples_re));
|
||||
}
|
||||
Command::Groups => {
|
||||
let lib = MovieLibrary::new(MOVIE_DIR);
|
||||
let lib = MovieLibrary::new(app.root);
|
||||
let videos = lib.videos()?;
|
||||
|
||||
let mut video_groups: HashMap<String, Vec<(String, CompactMetadata)>> = HashMap::new();
|
||||
@ -226,30 +233,30 @@ fn main() -> Result<(), Box<dyn Error>> {
|
||||
print_video_groups(&video_groups);
|
||||
}
|
||||
Command::CompactMetadata => {
|
||||
let lib = MovieLibrary::new(MOVIE_DIR);
|
||||
let lib = MovieLibrary::new(app.root);
|
||||
lib.compact_metadata()?;
|
||||
}
|
||||
Command::PrintDupes => {
|
||||
let lib = MovieLibrary::new(MOVIE_DIR);
|
||||
let lib = MovieLibrary::new(app.root);
|
||||
print_dupes(&lib);
|
||||
}
|
||||
Command::PrintAll => {
|
||||
let lib = MovieLibrary::new(MOVIE_DIR);
|
||||
let lib = MovieLibrary::new(app.root);
|
||||
let videos = lib.videos()?;
|
||||
|
||||
print_all(videos);
|
||||
}
|
||||
Command::UpdateMetadata => {
|
||||
let lib = MovieLibrary::new(MOVIE_DIR);
|
||||
let lib = MovieLibrary::new(app.root);
|
||||
lib.update_metadata()?;
|
||||
}
|
||||
Command::UpdateAndCompactMetadata => {
|
||||
let lib = MovieLibrary::new(MOVIE_DIR);
|
||||
let lib = MovieLibrary::new(app.root);
|
||||
lib.update_metadata()?;
|
||||
lib.compact_metadata()?;
|
||||
}
|
||||
Command::EmptyDirs => {
|
||||
let lib = MovieLibrary::new(MOVIE_DIR);
|
||||
let lib = MovieLibrary::new(app.root);
|
||||
let dirs = lib.empty_dirs()?;
|
||||
let root = Path::new(&lib.root);
|
||||
if !dirs.is_empty() {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user