TadoTheRustacean ( TadoTheRustacean@programming.dev ) to Programmer Humor@programming.devEnglish · 3 years agothisIsGoingToBeASeriousDebateprogramming.devimagemessage-square33linkfedilinkarrow-up1200
arrow-up1200imagethisIsGoingToBeASeriousDebateprogramming.devTadoTheRustacean ( TadoTheRustacean@programming.dev ) to Programmer Humor@programming.devEnglish · 3 years agomessage-square33linkfedilink
minus-squarefable (she/they) ( pranaless@beehaw.org ) linkfedilinkarrow-up31·3 years agouse std::process::Command; fn main() { Command::new("sh") .arg("-c") .arg("echo Hello World!") .spawn() .unwrap(); } Like this?
minus-square30p87 ( 30p87@feddit.de ) linkfedilinkarrow-up10·3 years agoNo, more like use std::process::Command; fn main() { Command::new("sh").arg("-c").arg("echo Hello World!").spawn().unwrap(); } . Just a little bit shorter, as it seems /s
minus-squarefunkajunk ( funkajunk@lemm.ee ) linkfedilinkEnglisharrow-up8·3 years agoI just fucking threw up
minus-square30p87 ( 30p87@feddit.de ) linkfedilinkarrow-up6·3 years agoI did too. Multiple times in fact, I had to look at the other Rust code!
minus-squareTadoTheRustacean ( TadoTheRustacean@programming.dev ) OPlinkfedilinkarrow-up2·3 years agoIsn’t echo a shell builtin?
minus-squarefable (she/they) ( pranaless@beehaw.org ) linkfedilinkarrow-up1·3 years agoYes and no. While coreutils does provide an echo binary, shells also have a built-in for optimisation purposes. At first I had the code calling the binary directly, but then changed it to spawning a shell (and so using the builtin). It’s very cursed either way.
use std::process::Command; fn main() { Command::new("sh") .arg("-c") .arg("echo Hello World!") .spawn() .unwrap(); }Like this?
No, more like
use std::process::Command; fn main() { Command::new("sh").arg("-c").arg("echo Hello World!").spawn().unwrap(); }.
Just a little bit shorter, as it seems /s
I just fucking threw up
I did too. Multiple times in fact, I had to look at the other Rust code!
Isn’t echo a shell builtin?
Yes and no. While coreutils does provide an
echobinary, shells also have a built-in for optimisation purposes.At first I had the code calling the binary directly, but then changed it to spawning a shell (and so using the builtin). It’s very cursed either way.