本文简要介绍rust语言中 Function std::env::home_dir
的用法。
用法
pub fn home_dir() -> Option<PathBuf>
如果已知,则返回当前用户的主目录的路径。
Unix
- 如果设置了 'HOME' 环境变量,则返回它的值(包括空字符串)。
- 否则,它会尝试通过使用当前用户的 UID 调用
getpwuid_r
函数来确定主目录。getpwuid_r
函数返回的空主目录字段被视为有效值。 - 如果当前用户在 /etc/passwd 文件中没有条目,则返回
None
。
Windows
- 如果设置了 'HOME' 环境变量,则返回它的值(包括空字符串)。
- 否则,返回 'USERPROFILE' 环境变量的值(如果已设置)(包括空字符串)。
- 如果两者都不存在,则使用
GetUserProfileDirectory
返回路径。
例子
use std::env;
match env::home_dir() {
Some(path) => println!("Your home directory, probably: {}", path.display()),
None => println!("Impossible to get your home dir!"),
}
相关用法
- Rust hash用法及代码示例
- Rust hard_link用法及代码示例
- Rust UdpSocket.set_multicast_loop_v6用法及代码示例
- Rust i64.overflowing_add_unsigned用法及代码示例
- Rust Box.downcast用法及代码示例
- Rust BTreeMap.last_key_value用法及代码示例
- Rust str.make_ascii_uppercase用法及代码示例
- Rust u128.checked_pow用法及代码示例
- Rust usize.wrapping_mul用法及代码示例
- Rust AtomicU8.fetch_sub用法及代码示例
- Rust PanicInfo.payload用法及代码示例
- Rust MaybeUninit.assume_init_mut用法及代码示例
- Rust String.try_reserve用法及代码示例
- Rust Mutex.new用法及代码示例
- Rust f32.exp用法及代码示例
- Rust Result.unwrap_or_else用法及代码示例
- Rust slice.sort_unstable_by_key用法及代码示例
- Rust Formatter.precision用法及代码示例
- Rust i128.log2用法及代码示例
- Rust OsStr.to_ascii_uppercase用法及代码示例
- Rust f32.hypot用法及代码示例
- Rust RefCell.try_borrow_unguarded用法及代码示例
- Rust i16.log10用法及代码示例
- Rust LowerExp用法及代码示例
- Rust HashSet.get_or_insert_with用法及代码示例
注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Function std::env::home_dir。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。