#sysexit #exit #system #defined #codes #preferred

未维护 exitcode

根据 sysexits.h 定义的推荐系统退出码

5 个稳定版本

使用旧的 Rust 2015

1.1.2 2017年6月18日
1.1.1 2017年6月11日
1.0.1 2017年5月27日
1.0.0 2017年5月25日

478操作系统

Download history 24137/week @ 2024-02-28 25773/week @ 2024-03-06 26898/week @ 2024-03-13 24277/week @ 2024-03-20 23739/week @ 2024-03-27 25923/week @ 2024-04-03 25624/week @ 2024-04-10 25805/week @ 2024-04-17 27779/week @ 2024-04-24 24542/week @ 2024-05-01 27339/week @ 2024-05-08 26532/week @ 2024-05-15 25625/week @ 2024-05-22 27230/week @ 2024-05-29 27451/week @ 2024-06-05 21322/week @ 2024-06-12

106,508 每月下载量
204 crate 中使用 (直接使用 171 个)

Apache-2.0

7KB

ghit.me Build Status Crates.io

exitcode

sysexits.h 定义的系统退出码常量

文档可在 此处 获取

crates.io 安装

[dependencies]
exitcode = "1.1.2"

示例

extern crate exitcode;

use std::process;

pub fn parse_int_or_return_error_exitcode(s: String) -> Result<i32, exitcode::ExitCode> {
    match s.parse::<i32>() {
        Ok(i) => Ok(i),
        Err(_) => Err(exitcode::USAGE)
    }

}

pub fn main() {

    match parse_int_or_return_error_exitcode("123".to_string()) {
        Ok(i) => println!("Parsed: {}", i),
        Err(code) => {
            println!("Parse error.  Exiting with code: {}", code);
            process::exit(code);
        }
    }

    match parse_int_or_return_error_exitcode("foo".to_string()) {
        Ok(i) => println!("Parsed: {}", i),
        Err(code) => {
            println!("Parse error.  Exiting with code: {}", code);
            process::exit(code);
        }
    }

    println!("Exiting with code: {}", exitcode::OK);
    process::exit(exitcode::OK);

}

无运行时依赖