getusers
Prototype: getusers(exclude_names, exclude_ids)
Return type: slist
Description: Returns a list of all users defined, except those names in the comma separated string of exclude_names and the comma separated string of uids in exclude_ids
Arguments:
exclude_names:string- Comma separated list of User names - in the range:.*exclude_ids:string- Comma separated list of UserID numbers - in the range:.*
Example:
body common control
{
      bundlesequence => { "example" };
}
bundle agent example
{
  vars:
      # The getusers function takes two filtering arguments: exclude_names and
      # exclude_ids, both a comma separated list of usernames and user IDs
      # respectively.
      # To get users with a uid 1000 and greater we generate a list of uids from
      # 0 to 999 and convert it into a comma separated string used to filter the
      # list of users.
      "users_with_uid_gt_999"
        slist => getusers( "", join( ",", expandrange( "[0-999]", 1 ) ) );
      # Here we get a list of users except usernames nfsnobody and vagrant as
      # well as any users with uid 8 or 9
      "users_except_nfsnobody_and_vagrant_and_uid_8_and_9"
        slist => getusers( "nfsnobody,vagrant", "8,9" );
      # Here we get a list of all users by not filtering any
      "allusers" slist => getusers("","");
      "root_list" slist => { "root" };
      # this will get just the root users out of the full user list
      "justroot" slist => intersection(allusers, root_list);
  reports:
      "Found just the root user: $(justroot)";
}Output:
R: Found just the root user: root
Notes:
- This function is currently only available on Unix-like systems.
 - This function will return both local and remote (for example, users defined in an external directory like LDAP) users on a system.
 
History:
- Introduced in CFEngine 3.1.0b1, CFEngine Nova/Enterprise 2.0.0b1 (2010).
 
See also: getuserinfo()
, users
.