#command #execute-command #command-output #execution #status #variant #linux-mac-os

rainbow-dash

Command execution library for Linux/macOS and Windows

2 releases

0.1.1 May 15, 2024
0.1.0 May 14, 2024
0.0.0 Apr 15, 2024

#39 in #command-output

MIT license

6KB
96 lines

Rainbow Dash

Command execution library for Linux/macOS and Windows.

Has functions with status and output variants.

Example usage:

Running a command that is the same on Linux/macOS and Windows:

let status = execute_command("echo 'Pinkie Pie is best pony!'")?;
println!("{}", status.success()); // true or false

Running a command with output that is the same on Linux/macOS and Windows:

let output = execute_command_with_return("echo 'Pinkie Pie is best pony!'")?;
println!("{}", String::from_utf8(output.stdout)?); // Pinkie Pie is best pony!

If your commands are different on Linux/macOS and Windows, you can use the target-specific functions:

#[cfg(not(target_os = "windows"))]
let status = execute_unix_command("ls -la");
#[cfg(target_os = "windows")]
let status = execute_windows_command("dir /a /w");
println!("{}", status.success()); // true or false

No runtime deps