Feat: Use clap for argument parsing.
This commit is contained in:
+5
-7
@@ -1,16 +1,14 @@
|
|||||||
|
use clap::Parser;
|
||||||
|
|
||||||
|
// Search for a pattern in a file and display the lines that contain it.
|
||||||
|
#[derive(Parser)]
|
||||||
struct Cli {
|
struct Cli {
|
||||||
pattern: String,
|
pattern: String,
|
||||||
path: std::path::PathBuf,
|
path: std::path::PathBuf,
|
||||||
}
|
}
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
let pattern = std::env::args().nth(1).expect("no pattern given.");
|
let args = Cli::parse();
|
||||||
let path = std::env::args().nth(2).expect("no path given.");
|
|
||||||
|
|
||||||
let args = Cli {
|
|
||||||
pattern,
|
|
||||||
path: std::path::PathBuf::from(path),
|
|
||||||
};
|
|
||||||
|
|
||||||
println!("pattern: {:?}, path: {:?}", args.pattern, args.path)
|
println!("pattern: {:?}, path: {:?}", args.pattern, args.path)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user