System.Environment
| Авторские права | (c) Университет Глазго 2001 |
|---|---|
| Лицензия | BSD-стиль (см. файл libraries/base/LICENSE) |
| Поддержка | libraries@haskell.org |
| Устойчивость | предварительная |
| Переносимость | переносимая |
| Safe Haskell | Safe |
| Язык | Haskell2010 |
Описание
Разнообразная информация об окружении системы.
getArgs :: IO [Строка] Исходный код
Вычисление getArgs возвращает список аргументов командной строки программы (без имени программы).
getProgName :: IO Строка Исходный код
Вычисление getProgName возвращает имя программы, как оно было вызвано.
Однако, это сложно или невозможно реализовать на некоторых не-Unix системах, поэтому для максимальной переносимости мы возвращаем только имя файла программы, как оно было вызвано. Даже тогда есть некоторые различия между платформами: например, в Windows, программа, вызываемая как foo, вероятно, на самом деле FOO.EXE, и именно это getProgName вернет.
getExecutablePath :: IO Путь Исходный код
Возвращает абсолютный путь к текущему исполняемому файлу.
Обратите внимание, что для скриптов и интерактивных сессий это путь к интерпретатору (например, ghci).
С версии: 4.6.0.0
getEnv :: Строка -> IO Строка Исходный код
Вычисление getEnv var возвращает значение переменной окружения var. Для обратного действия пользователи POSIX могут использовать putEnv.
Это вычисление может завершиться ошибкой:
-
isDoesNotExistErrorесли переменная окружения не существует.
lookupEnv :: Строка -> IO (Может быть Строка) Исходный код
Возвращает значение переменной окружения var, или Nothing если такого значения нет.
Для пользователей POSIX это эквивалентно getEnv.
С версии: 4.6.0.0
setEnv :: Строка -> Строка -> IO () Исходный код
setEnv name value устанавливает указанную переменную окружения в значение value.
В Windows установка переменной окружения в пустую строку удаляет эту переменную окружения из окружения. Для совместимости мы принимаем такое поведение. В частности
setEnv name ""
имеет тот же эффект, что и
unsetEnv name
Если вам не важна поддержка Windows и вы хотите установить переменную окружения в пустую строку, используйте System.Posix.Env.setEnv из пакета unix вместо этого.
Выбрасывает IOException если name является пустой строкой или содержит знак равенства.
С версии: 4.7.0.0
unsetEnv :: Строка -> IO () Исходный код
unSet name удаляет указанную переменную окружения из среды текущего процесса.
Выбрасывает IOException если name является пустой строкой или содержит знак равенства.
С версии: 4.7.0.0
withArgs :: [Строка] -> IO a -> IO a Исходный код
withArgs args act - во время выполнения действия act, имейте getArgs возвращает args.
withProgName :: Строка -> IO a -> IO a Исходный код
withProgName name act - во время выполнения действия act, имейте getProgName возвращает name.
getEnvironment :: IO [(Строка, Строка)] Исходный код
getEnvironment извлекает все окружение в виде списка пар (key,value).
Если запись в окружении не содержит символа '=', то key это вся запись, а value это пустая строка.
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/base-4.8.2.0/System-Environment.html