# Function std::env::home_dir 1.0.0[−][src]

    pub fn home_dir() -> Option<PathBuf>

Deprecated since 1.29.0

: This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead.

Returns the path of the current user's home directory if known.

# Unix

- Returns the value of the 'HOME' environment variable if it is set (including to an empty string).
- Otherwise, it tries to determine the home directory by invoking the `getpwuid_r` function using the UID of the current user. An empty home directory field returned from the `getpwuid_r` function is considered to be a valid value.
- Returns `None` if the current user has no entry in the /etc/passwd file.

# Windows

- Returns the value of the 'HOME' environment variable if it is set (including to an empty string).
- Otherwise, returns the value of the 'USERPROFILE' environment variable if it is set (including to an empty string).
- If both do not exist, `GetUserProfileDirectory` is used to return the path.

# Examples

    use std::env;

    match env::home_dir() {
        Some(path) => println!("Your home directory, probably: {}", path.display()),
        None => println!("Impossible to get your home dir!"),
    }Run

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g. `str,u8` or `String,struct:Vec,test`)