0249-CLAP-必选参数
环境
- Time 2022-12-02
- WSL-Ubuntu 22.04
- CLAP 4.0.29
前言
说明
参考:https://docs.rs/clap/latest/clap/index.html
目标
编写一个必须提供某个参数的程序。
Cargo.toml
[package]
edition = "2021"
name = "game"
version = "1.0.0"
[dependencies]
clap = "4"
main.rs
use clap::{Arg, Command};
fn main() {
let matches = Command::new("test")
.author("JiangBo")
.version("1.4.4")
.about("一个测试程序")
.arg(Arg::new("name").short('n').long("name").help("姓名"))
.arg(
Arg::new("age")
.short('a')
.long("age")
.help("年龄")
.required(true),
)
.get_matches();
if let Some(param) = matches.get_one::<String>("name") {
println!("输入的姓名是: {}", param);
}
if let Some(param) = matches.get_one::<String>("age") {
println!("输入的年龄是: {}", param);
}
}
查看帮助
root@jiangbo12490:~/git/game/target/release# ./game -h
一个测试程序
Usage: game [OPTIONS] --age <age>
Options:
-n, --name <name> 姓名
-a, --age <age> 年龄
-h, --help Print help information
-V, --version Print version information
使用
root@jiangbo12490:~/git/game/target/release# ./game -n 张三
error: The following required arguments were not provided:
--age <age>
Usage: game --age <age> --name <name>
For more information try '--help'
总结
编写了一个必须提供某个参数的程序。