Struct subprocess::PopenConfig
source · [−]pub struct PopenConfig {
pub stdin: Redirection,
pub stdout: Redirection,
pub stderr: Redirection,
pub detached: bool,
pub executable: Option<OsString>,
pub env: Option<Vec<(OsString, OsString)>>,
pub cwd: Option<OsString>,
/* private fields */
}
Expand description
Options for Popen::create
.
When constructing PopenConfig
, always use the Default
trait,
such as:
Popen::create(argv, PopenConfig {
stdout: Redirection::Pipe,
detached: true,
// ... other fields you want to override ...
..Default::default()
})
This ensures that fields added later do not break existing code.
An alternative to using PopenConfig
directly is creating
processes using Exec
, a builder for Popen
.
Fields
stdin: Redirection
How to configure the executed program’s standard input.
stdout: Redirection
How to configure the executed program’s standard output.
stderr: Redirection
How to configure the executed program’s standard error.
detached: bool
Whether the Popen
instance is initially detached.
executable: Option<OsString>
Executable to run.
If provided, this executable will be used to run the program
instead of argv[0]
. However, argv[0]
will still be passed
to the subprocess, which will see that as argv[0]
. On some
Unix systems, ps
will show the string passed as argv[0]
,
even though executable
is actually running.
env: Option<Vec<(OsString, OsString)>>
Environment variables to pass to the subprocess.
If this is None, environment variables are inherited from the calling process. Otherwise, the specified variables are used instead.
Duplicates are eliminated, with the value taken from the variable appearing later in the vector.
cwd: Option<OsString>
Initial current working directory of the subprocess.
None means inherit the working directory from the parent.
Implementations
sourceimpl PopenConfig
impl PopenConfig
sourcepub fn try_clone(&self) -> Result<PopenConfig>
pub fn try_clone(&self) -> Result<PopenConfig>
Clone the underlying PopenConfig
, or return an error.
This is guaranteed not to fail as long as no
Redirection::File
variant is used for one of the standard
streams. Otherwise, it fails if File::try_clone
fails on
one of the Redirection
s.
Trait Implementations
sourceimpl Debug for PopenConfig
impl Debug for PopenConfig
sourceimpl Default for PopenConfig
impl Default for PopenConfig
sourcefn default() -> PopenConfig
fn default() -> PopenConfig
Returns the “default value” for a type. Read more
Auto Trait Implementations
impl RefUnwindSafe for PopenConfig
impl !Send for PopenConfig
impl !Sync for PopenConfig
impl Unpin for PopenConfig
impl UnwindSafe for PopenConfig
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more