#execute-command #execute #command #process

runcmd

这个库用于扩展 Execute,它扩展了 Command 以便于更容易地执行命令。特别适用于简单的shell命令,以数字作为退出码,以字符串形式作为stdout和stderr。

2个版本

0.1.1 2022年12月20日
0.1.0 2022年12月20日

#2236解析器实现

MIT 许可证

9KB
121

RunCmd

CI

这个库用于扩展 Execute,它扩展了 Command 以便于更容易地执行命令。特别适用于简单的shell命令,以数字作为退出码,以字符串形式作为stdout和stderr。

使用方法

use std::process::Command;

use runcmd::RunCmd;

RunCmd::new("echo \"Hello World\"").execute();

verbose

verbose() 将输出和输入打印到stdout

RunCmd::new("echo \"Hello World\"")
    .verbose()
    .execute();

shell

shell() 将执行器设置为在shell中运行命令,使用底层的 Execute::shell 而不是 Execute::command。

RunCmd::new("echo \"Hello World\"")
    .shell()
    .execute();

executep

executep() 运行命令,不返回任何内容,如果命令失败则panic。在非常简单的情况下非常有用。

RunCmd::new("echo \"Hello World\"")
    .shell()
    .executep();

execute

execute() 运行命令,返回 RunCmdOutput。

let retval: RunCmdOutput = RunCmd::new("echo \"Hello World\"").execute();

它返回以下内容。

pub struct RunCmdOutput {
    pub cmd: String,
    pub stdout: String,
    pub stderr: String,
    pub exitcode: i32
}

依赖

~0.6–1MB
~25K SLoC