└── namgv /namgv: -------------------------------------------------------------------------------- 1 | use rand::{distributions::Alphanumeric, Rng}; 2 | use std::env; 3 | 4 | fn generate_password(length: usize) -> String { 5 | rand::thread_rng() 6 | .sample_iter(&Alphanumeric) 7 | .take(length) 8 | .map(char::from) 9 | .collect() 10 | } 11 | 12 | fn main() { 13 | let args: Vec = env::args().collect(); 14 | 15 | if args.len() < 2 { 16 | println!("Usage: password_generator "); 17 | return; 18 | } 19 | 20 | match args[1].parse::() { 21 | Ok(length) if length >= 6 => { 22 | let password = generate_password(length); 23 | println!("Generated Password: {}", password); 24 | } 25 | _ => println!("Please enter a valid password length (min 6 characters)."), 26 | } 27 | } 28 | --------------------------------------------------------------------------------