...The library also supports features like variable substitution, scoped environment settings, and defining custom commands (functions) that behave like built-ins. It hides much of the boilerplate of std::process::Command when you're doing simple task automations, but still allows full flexibility when needed. Because it avoids launching a shell, it reduces some classes of security and quoting errors, while improving readability of scripting logic inside a Rust binary.