• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Rust执行cmd或shell命令

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
use std::process::Command;

// cmd_str可以是从输入流读取或从文件里读取
let cmd_str: String;
if cfg!(target_os = "windows") {
    // 这里不用\\而是/的话会被windows认为/tmp的/t是一个option而报错
    cmd_str = "dir d:\\tmp".to_string();
} else {
    cmd_str = "dir /usr/tmp".to_string();
}

let output = if cfg!(target_os = "windows") {
    Command::new("cmd").arg("/c").arg(cmd_str).output().expect("cmd exec error!");
} else {
    Command::new("sh").arg("-c").arg(cmd_str).output().expect("sh exec error!");
}

let output_str = String::from_utf8_lossy(&output.stdout);
println!("{}", output_str);

上面的是同步执行命令,还可以异步执行的方式,貌似叫child的一个方法,这个需要用的时候再说;而且也可以利用task将同步的放到异步的地方进行执行;


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
[转载]matlab的colormap的保存发布时间:2022-07-18
下一篇:
Matlab函数返回矩阵发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap