main.rs (872B)
1 use std::{env, fs}; 2 3 fn main() { 4 let user_arg = env::args().nth(1); 5 let path = "/home/user/.local/share/ffr"; 6 let file_input = fs::read_to_string(path).unwrap_or_else(|e| panic!("ERROR: {e}")); 7 8 match user_arg { 9 Some(arg) => print_arg(&file_input, &arg), 10 None => no_arg(&file_input), 11 } 12 } 13 14 fn print_arg(input: &str, arg: &str) { 15 let keyword = format!("#>{arg}"); 16 let mut printing = false; 17 18 for line in input.lines() { 19 if line.contains(&keyword) { 20 printing = true; 21 continue; 22 } 23 24 if printing { 25 if line.starts_with("#>") { 26 break; 27 } 28 println!("{line}"); 29 } 30 } 31 } 32 33 fn no_arg(input: &str) { 34 for line in input.lines() { 35 if line.starts_with("#>") { 36 break; 37 } 38 println!("{line}"); 39 } 40 }