/Haskell 7


Copyright (c) The University of Glasgow 2002
License BSD-style (see the file libraries/base/LICENSE)
Maintainer libraries@haskell.org
Stability provisional
Portability non-portable (requires POSIX)
Safe Haskell Trustworthy
Language Haskell2010


POSIX environment support

Environment Variables

getEnv :: ByteString -> IO (Maybe ByteString) Source

getEnv looks up a variable in the environment.

getEnvDefault :: ByteString -> ByteString -> IO ByteString Source

getEnvDefault is a wrapper around getEnv where the programmer can specify a fallback if the variable is not found in the environment.

getEnvironmentPrim :: IO [ByteString] Source

getEnvironment :: IO [(ByteString, ByteString)] Source

getEnvironment retrieves the entire environment as a list of (key,value) pairs.

putEnv :: ByteString -> IO () Source

putEnv function takes an argument of the form name=value and is equivalent to setEnv(key,value,True{-overwrite-}).

setEnv :: ByteString -> ByteString -> Bool -> IO () Source

The setEnv function inserts or resets the environment variable name in the current environment list. If the variable name does not exist in the list, it is inserted with the given value. If the variable does exist, the argument overwrite is tested; if overwrite is False, the variable is not reset, otherwise it is reset to the given value.

unsetEnv :: ByteString -> IO () Source

The unsetEnv function deletes all instances of the variable name from the environment.

Program arguments

getArgs :: IO [ByteString] Source

Computation getArgs returns a list of the program's command line arguments (not including the program name), as ByteStrings.

Unlike getArgs, this function does no Unicode decoding of the arguments; you get the exact bytes that were passed to the program by the OS. To interpret the arguments as text, some Unicode decoding should be applied.

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).