Avatar ·

Como executar um comando do sistema e obter sua saída em Rust?

Olá a todos! Sou novo em Rust e estou tentando executar um comando simples do sistema, como `ls -la`, e obter sua saída como uma string. Em Python, eu faria `subprocess.check_output(...)`, mas aqui nada funciona. Estou tentando assim: ```rust use std::process::Command; fn main() { let output = Command::new("ls") .arg("-la") .output() .expect("falha ao executar o processo"); println!("{}", output.stdout); } ``` Mas no console aparece algo como `[115, 116, 114, ...]` — alguns números, e não texto legível. Tentei adicionar `.to_string()`, mas o compilador reclama. Também ouvi falar sobre `std::process::Output`, mas não entendo como extrair o texto dele. Diga-me como executar corretamente o comando e obter sua saída como string? De preferência com tratamento de erros — o que fazer se o comando não for encontrado ou terminar com código de saída diferente de zero. Desde já, obrigado! <<>>

Problema principal: bytes vs string

Você fez quase tudo certo