Crates.io | shutil |
lib.rs | shutil |
version | 0.1.2 |
source | src |
created_at | 2023-02-23 07:44:05.440805 |
updated_at | 2023-03-19 18:36:34.067562 |
description | Shell utility helper library |
homepage | https://github.com/rajbot/shutil |
repository | https://github.com/rajbot/shutil |
max_upload_size | |
id | 792392 |
size | 43,894 |
Rust shell utility helper library
cargo add shutil
shutil::pipe()
makes it easy to execute command pipelines in rust.
For example, say you want to execute the following pipeline:
echo foo | rev | tr 'a-z' 'A-Z'
This will echo the string "foo", reverse it, and then change lowercase characters to uppercase. The result will be the string "OOF". Here is the equivalent rust code:
use shutil::pipe;
fn main() {
// Executes `echo "foo" | rev | tr "a-z" "A-Z"`
let output = pipe(vec![
vec!["echo", "foo"],
vec!["rev"],
vec!["tr", "a-z", "A-Z"],
]);
// prints "OOF"
println!("{}", output.unwrap());
}