From 2e4c47e936e74f8d6e82e7fc4f7602ceaa2e9ae5 Mon Sep 17 00:00:00 2001 From: Hatter Jiang Date: Sat, 18 Jan 2025 14:37:49 +0800 Subject: [PATCH] feat: updates --- src/install.rs | 2 +- src/template.rs | 28 +++++++++++----------------- 2 files changed, 12 insertions(+), 18 deletions(-) diff --git a/src/install.rs b/src/install.rs index c5533cd..9f147af 100644 --- a/src/install.rs +++ b/src/install.rs @@ -21,7 +21,7 @@ pub fn install_scripts(arguments: &[String]) { } } -pub fn install_script(script_name: &str, script_meta_map: &BTreeMap) { +fn install_script(script_name: &str, script_meta_map: &BTreeMap) { let script_meta = match script_meta_map.get(script_name) { None => { failure!("Script not found: {}", script_name); diff --git a/src/template.rs b/src/template.rs index 9b207b4..03d7e6f 100644 --- a/src/template.rs +++ b/src/template.rs @@ -3,25 +3,19 @@ use std::os::unix::fs::PermissionsExt; pub fn print_template(output: &Option) { let script = get_script_template(); - match output { - None => { - println!("{}", script); + if let Some(output_file) = output { + if fs::metadata(output_file).is_ok() { + failure!("Output script file exists: {}", output_file); + return; } - Some(output_file) => { - if fs::metadata(output_file).is_ok() { - failure!("Output script file exists: {}", output_file); - } else { - match fs::write(output_file, script) { - Ok(_) => { - success!("Write script file success: {}", output_file); - let _ = fs::set_permissions(output_file, PermissionsExt::from_mode(0o755)); - } - Err(e) => { - failure!("Write script file: {}, failed: {}", output_file, e); - } - } - } + if let Err(e) = fs::write(output_file, script) { + failure!("Write script file: {}, failed: {}", output_file, e); + } else { + success!("Write script file success: {}", output_file); + let _ = fs::set_permissions(output_file, PermissionsExt::from_mode(0o755)); } + } else { + println!("{}", script); } }