windows remove cli

81 阅读1分钟

Cargo.toml

[package]
name = "rm"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
remove_dir_all = "0.7.0"

[profile.release]
opt-level = 'z'
lto = true
codegen-units = 1
panic = 'abort'

main.rs

use remove_dir_all::*;
use std::path::Path;
#[allow(warnings)]
fn main() {
    let arguments: Vec<String> = std::env::args().collect();
    let path = Path::new(&arguments[1]);
    if path.is_dir(){
        remove_dir_all(&arguments[1]).unwrap();
    }else if path.is_file(){
        std::fs::remove_file(&arguments[1]).unwrap();
    }    
}