pub fn args() -> ArgsⓘNotable traits for Argsimpl Iterator for Args type Item = String;
Returns the arguments which this program was started with (normally passed via the command line).
The first element is traditionally the path of the executable, but it can be set to arbitrary text, and may not even exist. This means this property should not be relied upon for security purposes.
On Unix systems shell usually expands unquoted arguments with glob patterns (such as *
and ?
). On Windows this is not done, and such arguments are passed as-is.
On glibc Linux systems, arguments are retrieved by placing a function in ".init_array". Glibc passes argc, argv, and envp to functions in ".init_array", as a non-standard extension. This allows std::env::args
to work even in a cdylib
or staticlib
, as it does on macOS and Windows.
The returned iterator will panic during iteration if any argument to the process is not valid unicode. If this is not desired, use the args_os
function instead.
use std::env; // Prints each argument on a separate line for argument in env::args() { println!("{}", argument); }
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/env/fn.args.html