Пакет user
Обзор
Пакет user позволяет искать учетные записи пользователей по имени или ID.
Для большинства систем Unix этот пакет имеет две внутренние реализации для преобразования идентификаторов пользователей и групп в имена и вывода дополнительных идентификаторов групп. Одна реализация написана на чистом Go и анализирует /etc/passwd и /etc/group. Другая реализация основана на cgo и использует стандартные функции библиотеки C (libc), такие как getpwuid_r, getgrnam_r и getgrouplist.
Когда доступно cgo и необходимые функции реализованы в libc для конкретной платформы, используется cgo-основанный (libc-поддерживаемый) код. Это можно переопределить, используя тег сборки osusergo, который заставляет использовать реализацию на чистом Go.
Индекс
Файлы пакета
cgo_listgroups_unix.go cgo_lookup_cgo.go cgo_lookup_unix.go getgrouplist_unix.go lookup.go user.go
тип Group 1.7
Group представляет собой группу пользователей.
В системах POSIX поле Gid содержит десятичное число, представляющее идентификатор группы.
type Group struct {
Gid string // group ID
Name string // group name
}
функция LookupGroup 1.7
func LookupGroup(name string) (*Group, error)
LookupGroup ищет группу по имени. Если группа не найдена, возвращаемое исключение является типом UnknownGroupError.
функция LookupGroupId 1.7
func LookupGroupId(gid string) (*Group, error)
LookupGroupId ищет группу по идентификатору группы. Если группа не найдена, возвращаемое исключение является типом UnknownGroupIdError.
тип UnknownGroupError 1.7
UnknownGroupError возвращается функцией LookupGroup, когда группа не найдена.
type UnknownGroupError string
функция (UnknownGroupError) Error 1.7
func (e UnknownGroupError) Error() string
тип UnknownGroupIdError 1.7
UnknownGroupIdError возвращается функцией LookupGroupId, когда группа не найдена.
type UnknownGroupIdError string
функция (UnknownGroupIdError) Error 1.7
func (e UnknownGroupIdError) Error() string
тип UnknownUserError
UnknownUserError возвращается функцией Lookup, когда пользователь не найден.
type UnknownUserError string
функция (UnknownUserError) Error
func (e UnknownUserError) Error() string
тип UnknownUserIdError
UnknownUserIdError возвращается функцией LookupId, когда пользователь не найден.
type UnknownUserIdError int
функция (UnknownUserIdError) Error
func (e UnknownUserIdError) Error() string
тип User
User представляет учетную запись пользователя.
type User struct {
// Uid is the user ID.
// On POSIX systems, this is a decimal number representing the uid.
// On Windows, this is a security identifier (SID) in a string format.
// On Plan 9, this is the contents of /dev/user.
Uid string
// Gid is the primary group ID.
// On POSIX systems, this is a decimal number representing the gid.
// On Windows, this is a SID in a string format.
// On Plan 9, this is the contents of /dev/user.
Gid string
// Username is the login name.
Username string
// Name is the user's real or display name.
// It might be blank.
// On POSIX systems, this is the first (or only) entry in the GECOS field
// list.
// On Windows, this is the user's display name.
// On Plan 9, this is the contents of /dev/user.
Name string
// HomeDir is the path to the user's home directory (if they have one).
HomeDir string
}
функция Current
func Current() (*User, error)
Current возвращает текущего пользователя.
Первый вызов кэширует информацию о текущем пользователе. Последующие вызовы возвращают кэшированное значение и не отражают изменения текущего пользователя.
функция Lookup
func Lookup(username string) (*User, error)
Lookup ищет пользователя по имени пользователя. Если пользователь не найден, возвращаемое исключение является типом UnknownUserError.
функция LookupId
func LookupId(uid string) (*User, error)
LookupId ищет пользователя по идентификатору пользователя. Если пользователь не найден, возвращаемое исключение является типом UnknownUserIdError.
функция (*User) GroupIds 1.7
func (u *User) GroupIds() ([]string, error)
GroupIds возвращает список идентификаторов групп, членом которых является пользователь.
© Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
http://golang.org/pkg/os/user/