| Portability | portable |
|---|---|
| Stability | provisional |
| Maintainer | libraries@haskell.org |
System.Environment
Description
Miscellaneous information about the system environment.
Documentation
Computation getArgs returns a list of the program's command
line arguments (not including the program name).
getProgName :: IO StringSource
Computation getProgName returns the name of the program as it was
invoked.
However, this is hard-to-impossible to implement on some non-Unix
OSes, so instead, for maximum portability, we just return the leafname
of the program as invoked. Even then there are some differences
between platforms: on Windows, for example, a program invoked as foo
is probably really FOO.EXE, and that is what getProgName will return.
getEnv :: String -> IO StringSource
Computation getEnv var returns the value
of the environment variable var.
This computation may fail with:
-
System.IO.Error.isDoesNotExistErrorif the environment variable does not exist.
withProgName :: String -> IO a -> IO aSource
withProgName name act - while executing action act,
have getProgName return name.
getEnvironment :: IO [(String, String)]Source
getEnvironment retrieves the entire environment as a
list of (key,value) pairs.
If an environment entry does not contain an '=' character,
the key is the whole entry and the value is the empty string.