pub trait CommandExt {
// Required methods
fn command_success(&mut self) -> bool;
fn command_run(&mut self) -> Result<()>;
fn command_output(&mut self) -> Result<Output>;
fn command_status(&mut self) -> Result<ExitStatus>;
fn command_stdout(&mut self) -> Option<String>;
fn command_stderr(&mut self) -> Option<String>;
fn command_spawn(&mut self) -> Result<Child>;
fn command_line(&self) -> String;
}Expand description
std::process::Command 的扩展。
CommandExt::command_run、CommandExt::command_output、CommandExt::command_status
与 CommandExt::command_spawn 只在命令无法执行时报错,退出码由调用方判断;
CommandExt::command_success、CommandExt::command_stdout 与 CommandExt::command_stderr
则把「无法执行」与「未成功退出」统一按失败处理,用于探测类调用。
Required Methods§
Sourcefn command_success(&mut self) -> bool
fn command_success(&mut self) -> bool
执行命令并返回是否成功;命令无法执行或退出码非零时为假,不向上报错。
Sourcefn command_run(&mut self) -> Result<()>
fn command_run(&mut self) -> Result<()>
执行命令并检查退出码;失败时把命令行、退出码与完整输出一起报错。
Sourcefn command_output(&mut self) -> Result<Output>
fn command_output(&mut self) -> Result<Output>
执行命令并返回完整输出;仅命令无法执行时报错。
Sourcefn command_status(&mut self) -> Result<ExitStatus>
fn command_status(&mut self) -> Result<ExitStatus>
执行命令并返回退出状态;仅命令无法执行时报错。
Sourcefn command_stdout(&mut self) -> Option<String>
fn command_stdout(&mut self) -> Option<String>
执行命令并返回标准输出;命令无法执行或退出码非零时返回 None。
用于状态探测:探测失败与「探测结果为否」由调用方统一按否处理,不作为错误向上传播。
Sourcefn command_stderr(&mut self) -> Option<String>
fn command_stderr(&mut self) -> Option<String>
执行命令并返回标准错误;命令无法执行或退出码非零时返回 None。
Sourcefn command_spawn(&mut self) -> Result<Child>
fn command_spawn(&mut self) -> Result<Child>
启动命令并立即返回子进程句柄,不等待其结束。
Sourcefn command_line(&self) -> String
fn command_line(&self) -> String
命令行文本:程序与参数以空格连接,用于展示与错误信息。
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".