首页 > 其他分享 >0245-CLAP-解析位置参数

0245-CLAP-解析位置参数

时间:2024-08-19 10:06:39浏览次数:7  
标签:0245 param game version CLAP release 解析 jiangbo12490 clap

环境

  • Time 2022-12-02
  • WSL-Ubuntu 22.04
  • CLAP 4.0.29

前言

说明

参考:https://docs.rs/clap/latest/clap/index.html

目标

CLAP 表示 Command Line Argument Parser。基于 clap 编写第一个命令行程序。

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("param"))
        .get_matches();

    if let Some(param) = matches.get_one::<String>("param") {
        println!("输入的参数是: {}", param);
    }
}

查看帮助

root@jiangbo12490:~/git/game/target/release# ./game --help
一个测试程序

Usage: game [param]

Arguments:
  [param]

Options:
  -h, --help     Print help information
  -V, --version  Print version information
root@jiangbo12490:~/git/game/target/release#

查看版本

root@jiangbo12490:~/git/game/target/release# ./game -V
test 1.4.4

使用

root@jiangbo12490:~/git/game/target/release# ./game 哎呀
输入的参数是: 哎呀

总结

编写了可以解析第一个位置参数的命令行程序。

附录

标签:0245,param,game,version,CLAP,release,解析,jiangbo12490,clap
From: https://www.cnblogs.com/jiangbo4444/p/18366772

相关文章

  • 深入解析Spring Boot中多环境配置的实现
    深入解析SpringBoot中多环境配置的实现在现代软件开发中,应用程序往往需要在不同的环境中运行,例如开发环境、测试环境、生产环境等。每个环境可能有不同的配置需求,如数据库连接、日志级别、服务器地址等。SpringBoot提供了强大的多环境配置支持,使得开发者能够轻松管理不同......
  • 小白系列:数据库基础知识解析
    前言今天,我打算用简单明了的语言来讲解一下数据库的基本概念。总体上,这些内容与我在视频中讲解的基本一致。如果你发现视频的讲解有些难以理解,不妨看看这篇文字版的解释,希望能够更快速地帮助你掌握数据库的相关知识。需要注意的是,本文讨论的数据库主要指的是关系型数据库。数据......
  • UsbHostManager解析
    UsbHostManager和UsbDeviceManager的区别在于,UsbDeviceManager是将手机作为一个设备,比如手机连上电脑,使用adb、mtp等;而UsbHostManager,是将手机作为一个host,比如手机连接usb鼠标、usb摄像头等,就会new出一个UsbDevice出来。UsbHostManager初始化UsbHostManager和UsbDeviceManager......
  • 浏览器解析html文件src静态资源路径问题
    相对路径src资源引号内部不以/分割符开头,浏览器从当html文件前路径拼接url:场景a<imgsrc="static/1.jpeg"width="258"height="39"/>当前请求地址xxxx:80/html/1.html浏览器解析图片地址为xxxx:80/html/static/1.jpeg场景b<imgsrc="../static/1.jpeg"width="......
  • 深入解析当下流行的JDK版本:JDK 17的优势与特色
    引言Java作为一门成熟的编程语言,其发展历程中经历了多个重要版本的迭代。目前,JDK(JavaDevelopmentKit)已经更新至JDK21,但JDK17因其长期支持(LTS)特性,成为当前最流行的选择。本文将深入分析JDK17及其相较于其他主要版本的差异和优势。1.JDK版本概览1.1JDK8:里程碑式的版本......
  • 工厂设计模式:深入解析与应用
    工厂设计模式:深入解析与应用在软件开发领域,设计模式是解决常见问题的最佳实践。工厂设计模式(FactoryDesignPattern)作为一种创建型设计模式,提供了一种创建对象的接口,但由子类决定要实例化的类是哪一个。本文将深入探讨工厂设计模式的定义、分类、实现方式、优缺点以及应用......
  • Spring中的循环依赖:深入解析与解决方案
    Spring中的循环依赖:深入解析与解决方案在Spring框架中,循环依赖(CircularDependency)是一个常见的问题,它发生在两个或多个Bean之间相互依赖,形成一个闭环。循环依赖可能导致应用启动失败、Bean创建失败等问题,影响应用的正常运行。本文将深入探讨Spring中循环依赖的产生原因、......
  • Ubuntu无法解析域名DNS指向127.0.0.53问题处理
    首次尝试编辑/etc/resolved.conf文件DNS为114.114.114.114发现reboot重启后又恢复到127.0.0.53的内容再次尝试修改文件vi/etc/systemd/resolved.conf 在其中添加dns信息DNS=114.114.114.114保存退出依次执行重启解析服务systemctlrestartsystemd-resolved设置解析服务......
  • 如何快速将地址解析为经纬度坐标?
    GIS数据转换器的"地址转坐标"功能,可以帮助用户将地址文本快速转换为对应的经纬度坐标,广泛应用于地图定位、数据分析、GIS项目、在线导航、城市规划、紧急服务以及科学研究等多个领域,极大地提高了地理信息处理的效率和准确性。下面是详细的使用步骤:方法/步骤1. ......
  • 【OpenHarmony4.1 之 U-Boot 2024.07源码深度解析】019 - RK3568 Uboot 完整流程梳理
    【OpenHarmony4.1之U-Boot2024.07源码深度解析】019-RK3568Uboot完整流程梳理一、系统环境初始化:_start入口地址,初始化CPU环境二、系统环境初始化:_main入口,初始化堆栈,初始化gd全局环境变量,初始化CRuntime运行环境,开始执行board_init_f函数三、board_......