Rust में सिस्टम कमांड कैसे चलाएं और उसका आउटपुट प्राप्त करें?
सभी को नमस्ते! मैं Rust में नया हूँ और एक सरल सिस्टम कमांड, जैसे `ls -la`, चलाने और उसका आउटपुट स्ट्रिंग के रूप में प्राप्त करने की कोशिश कर रहा हूँ। Python में मैं `subprocess.check_output(...)` करता, लेकिन यहाँ कुछ काम नहीं कर रहा।
मैं इस तरह प्रयास कर रहा हूँ:
```rust
use std::process::Command;
fn main() {
let output = Command::new("ls")
.arg("-la")
.output()
.expect("कमांड चलाने में विफल");
println!("{}", output.stdout);
}
```
लेकिन कंसोल में कुछ `[115, 116, 114, ...]` जैसा आउटपुट आता है — कुछ संख्याएँ, मानव-पठनीय टेक्स्ट नहीं। मैंने `.to_string()` जोड़ने की कोशिश की, लेकिन कंपाइलर त्रुटि देता है। मैंने `std::process::Output` के बारे में भी सुना है, लेकिन समझ नहीं आता कि उसमें से टेक्स्ट कैसे निकालूँ।
कृपया बताएँ कि कमांड को सही तरीके से कैसे चलाएँ और उसका आउटपुट स्ट्रिंग के रूप में प्राप्त करें? त्रुटि प्रबंधन के साथ — यदि कमांड नहीं मिलती या गैर-शून्य कोड के साथ समाप्त होती है तो क्या करें। पहले से धन्यवाद!
<<>>
मुख्य समस्या: बाइट्स बनाम स्ट्रिंग
आपने लगभग सब कुछ सही किया है