Próbuję uruchomić proces z interfejsem API Command
i przekierować jego standardowe wyjście do błędu standardowego. Dodaje się nie powiedzie:Jak przekierować wyjściowe procesy potomne na stderr?
Command::new("tput").arg("rc")
.stdout(io::stderr())
.status()
.expect("failed to run tput");
ponieważ Command::new("tput").arg("rc").stdout(<XXX>)
oczekuje std::process::Stdio
:
expected struct `std::process::Stdio`, found struct `std::io::Stderr`
Równowartość w Bash będzie prawdopodobnie tput rc > /dev/stderr
.
Chciałbym wiedzieć, jak to zrobić poprawnie.
Krótko mówiąc na temat API, powiedziałbym, że nie jest to możliwe. Być może należy poruszyć kwestię, w której metoda 'stdout' mogłaby zaakceptować instancję' Writer'? –