From 5e84b5729cbb26c11082e2c5c7d9a152d37a0a3a Mon Sep 17 00:00:00 2001 From: kageru Date: Sat, 10 Nov 2018 22:18:28 +0100 Subject: [PATCH] CLI arguments or playlists/renames --- src/main.rs | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/main.rs b/src/main.rs index 602aac7..c53fbef 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,10 +1,23 @@ use std::fs::File; use std::io::{BufRead, BufReader, Result}; use std::collections::HashMap; +use std::env; use std::fs; +use std::process; fn main() -> Result<()> { - let file = File::open("beets_mv3u_renames")?; + let args: Vec = env::args().collect(); + + if args.len() < 3 { + println!("At least two arguments are required"); + process::exit(1); + } + + let rename_file = &args[1]; + let playlist_file = &args[2]; + println!("{:?}", rename_file); + + let file = File::open(rename_file)?; let mut renames = HashMap::new(); for line in BufReader::new(file).lines() { let line = line?; @@ -14,7 +27,7 @@ fn main() -> Result<()> { let mut outputs = Vec::new(); - let pls_file = File::open("playlist.m3u")?; + let pls_file = File::open(playlist_file)?; for entry in BufReader::new(pls_file).lines() { let entry = entry?; let new = renames.get(&entry).unwrap_or(&entry).to_string();