从 Rust 调用时存在的命令错误

问题描述 投票:0回答:1

我是 Rust 新手,我尝试通过 Rust 运行 Windows“dir”命令。但是,当我运行该程序时,它输出一个 Err 并表示找不到该程序。

我的主要职能是,

// gsync app
use std::process::Command;

fn main() {
    let res = Command::new("dir").output();
    println!("{:?}", res);
}

输出是,

   Compiling note v0.1.0 (C:\Users\Kavin\ultron\note)
    Finished dev [unoptimized + debuginfo] target(s) in 0.38s
     Running `target\debug\note.exe`
Err(Error { kind: NotFound, message: "program not found" })

我做错了什么?!谢谢您的帮助。

rust command
1个回答
0
投票

由于这个问题没有官方答案,我决定通过解释@Jmb的评论来自己“回答”。根据官方 Rust 书籍,

std::process::Command;
执行以下操作,

Constructs a new Command for launching the program at path program, with the following default configuration:
1. No arguments to the program
2. Inherit the current process’s environment
3. Inherit the current process’s working directory
4. Inherit stdin/stdout/stderr for spawn or status, but create pipes for output

由于

dir
不是一个程序,是 Windows 11(我使用的平台),因此它没有给出预期的输出。

© www.soinside.com 2019 - 2024. All rights reserved.