Module: Etc
- Defined in:
- etc.c
Class Method Summary collapse
-
.endgrent ⇒ Object
Ends the process of scanning through the /etc/group file begun by getgrent, and closes the file.
-
.endpwent ⇒ Object
Ends the process of scanning through the /etc/passwd file begun with getpwent, and closes the file.
-
.getgrent ⇒ Object
Returns an entry from the /etc/group file.
-
.getgrgid ⇒ Object
Returns information about the group with specified integer group id (gid), as found in /etc/group.
-
.getgrnam ⇒ Object
Returns information about the group with specified String name, as found in /etc/group.
-
.getlogin ⇒ Object
Returns the short user name of the currently logged in user.
-
.getpwent ⇒ Object
Returns an entry from the /etc/passwd file.
-
.getpwnam ⇒ Object
Returns the /etc/passwd information for the user with specified login name.
-
.getpwuid ⇒ Object
Returns the /etc/passwd information for the user with specified integer user id (uid).
-
.group ⇒ Object
Provides a convenient Ruby iterator which executes a block for each entry in the /etc/group file.
-
.passwd ⇒ Object
Provides a convenient Ruby iterator which executes a block for each entry in the /etc/passwd file.
-
.setgrent ⇒ Object
Resets the process of reading the /etc/group file, so that the next call to getgrent will return the first entry again.
-
.setpwent ⇒ Object
Resets the process of reading the /etc/passwd file, so that the next call to getpwent will return the first entry again.
Class Method Details
.endgrent ⇒ Object
Ends the process of scanning through the /etc/group file begun by getgrent, and closes the file.
454 455 456 |
# File 'etc.c', line 454 static VALUE etc_endgrent(obj) VALUE obj; |
.endpwent ⇒ Object
Ends the process of scanning through the /etc/passwd file begun with getpwent, and closes the file.
249 250 251 |
# File 'etc.c', line 249 static VALUE etc_endpwent(obj) VALUE obj; |
.getgrent ⇒ Object
Returns an entry from the /etc/group file. The first time it is called it opens the file and returns the first entry; each successive call returns the next entry, or nil if the end of the file has been reached.
To close the file when processing is complete, call endgrent.
Each entry is returned as a Struct::Group:
-
Group#name contains the name of the group as a String.
-
Group#passwd contains the encrypted password as a String. An ‘x’ is returned if password access to the group is not available; an empty string is returned if no password is needed to obtain membership of the group.
-
Group#gid contains the group’s numeric ID as an integer.
-
Group#mem is an Array of Strings containing the short login names of the members of the group.
484 485 486 |
# File 'etc.c', line 484 static VALUE etc_getgrent(obj) VALUE obj; |
.getgrgid ⇒ Object
Returns information about the group with specified integer group id (gid), as found in /etc/group.
The information is returned as a Struct::Group; see getgrent above for details.
e.g. Etc.getgrgid(100) -> #<struct Struct::Group name=“users”, passwd=“x”, gid=100, mem=[“meta”, “root”]>
333 334 335 |
# File 'etc.c', line 333 static VALUE etc_getgrgid(obj, id) VALUE obj, id; |
.getgrnam ⇒ Object
Returns information about the group with specified String name, as found in /etc/group.
The information is returned as a Struct::Group; see getgrent above for details.
e.g. Etc.getgrnam(‘users’) -> #<struct Struct::Group name=“users”, passwd=“x”, gid=100, mem=[“meta”, “root”]>
361 362 363 |
# File 'etc.c', line 361 static VALUE etc_getgrnam(obj, nam) VALUE obj, nam; |
.getlogin ⇒ Object
Returns the short user name of the currently logged in user. Unfortunately, it is often rather easy to fool getlogin(). Avoid getlogin() for security-related purposes.
e.g.
Etc.getlogin -> 'guest'
44 45 46 |
# File 'etc.c', line 44 static VALUE etc_getlogin(obj) VALUE obj; |
.getpwent ⇒ Object
Returns an entry from the /etc/passwd file. The first time it is called it opens the file and returns the first entry; each successive call returns the next entry, or nil if the end of the file has been reached.
To close the file when processing is complete, call endpwent.
Each entry is returned as a Struct::Passwd:
-
Passwd#name contains the short login name of the user as a String.
-
Passwd#passwd contains the encrypted password of the user as a String. an ‘x’ is returned if shadow passwords are in use. An ‘*’ is returned if the user cannot log in using a password.
-
Passwd#uid contains the integer user ID (uid) of the user.
-
Passwd#gid contains the integer group ID (gid) of the user’s primary group.
-
Passwd#gecos contains a longer String description of the user, such as a full name. Some Unix systems provide structured information in the gecos field, but this is system-dependent.
-
Passwd#dir contains the path to the home directory of the user as a String.
-
Passwd#shell contains the path to the login shell of the user as a String.
285 286 287 |
# File 'etc.c', line 285 static VALUE etc_getpwent(obj) VALUE obj; |
.getpwnam ⇒ Object
Returns the /etc/passwd information for the user with specified login name.
The information is returned as a Struct::Passwd; see getpwent above for details.
e.g. * Etc.getpwnam(‘root’) -> #<struct Struct::Passwd name=“root”, passwd=“x”, uid=0, gid=0, gecos=“root”,dir=“/root”, shell=“/bin/bash”>
157 158 159 |
# File 'etc.c', line 157 static VALUE etc_getpwnam(obj, nam) VALUE obj, nam; |
.getpwuid ⇒ Object
Returns the /etc/passwd information for the user with specified integer user id (uid).
The information is returned as a Struct::Passwd; see getpwent above for details.
e.g. * Etc.getpwuid(0) -> #<struct Struct::Passwd name=“root”, passwd=“x”, uid=0, gid=0, gecos=“root”,dir=“/root”, shell=“/bin/bash”>
123 124 125 |
# File 'etc.c', line 123 static VALUE etc_getpwuid(argc, argv, obj) int argc; |
.group ⇒ Object
Provides a convenient Ruby iterator which executes a block for each entry in the /etc/group file.
The code block is passed an Etc::Group struct; see getgrent above for details.
Example:
require 'etc'
Etc.group {|g|
puts g.name + ": " + g.mem.join(', ')
}
416 417 418 |
# File 'etc.c', line 416 static VALUE etc_group(obj) VALUE obj; |
.passwd ⇒ Object
Provides a convenient Ruby iterator which executes a block for each entry in the /etc/passwd file.
The code block is passed an Etc::Passwd struct; see getpwent above for details.
Example:
require 'etc'
Etc.passwd {|u|
puts u.name + " = " + u.gecos
}
211 212 213 |
# File 'etc.c', line 211 static VALUE etc_passwd(obj) VALUE obj; |
.setgrent ⇒ Object
Resets the process of reading the /etc/group file, so that the next call to getgrent will return the first entry again.
441 442 443 |
# File 'etc.c', line 441 static VALUE etc_setgrent(obj) VALUE obj; |
.setpwent ⇒ Object
Resets the process of reading the /etc/passwd file, so that the next call to getpwent will return the first entry again.
236 237 238 |
# File 'etc.c', line 236 static VALUE etc_setpwent(obj) VALUE obj; |