Go to main content

man pages section 1: User Commands

Exit Print View

Updated: Thursday, June 13, 2019
 
 

nodeattr (1)

Name

nodeattr - query genders file

Synopsis

nodeattr [-f genders] [-q | -c | -n | -s] [-X exclude_query] query
nodeattr [-f genders] [-q | -c | -n | -s] -A
nodeattr [-f genders] [-v] [node] attr[=val]
nodeattr [-f genders] -Q [node] query
nodeattr [-f genders] -V [-U] attr
nodeattr [-f genders] -l [node]
nodeattr [-f genders] -k
nodeattr [-f genders] -d genders
nodeattr [-f genders] --expand
nodeattr [-f genders] --compress

Description

NODEATTR(1)                        NODEATTR                        NODEATTR(1)



NAME
       nodeattr - query genders file

SYNOPSIS
       nodeattr [-f genders] [-q | -c | -n | -s] [-X exclude_query] query
       nodeattr [-f genders] [-q | -c | -n | -s] -A
       nodeattr [-f genders] [-v] [node] attr[=val]
       nodeattr [-f genders] -Q [node] query
       nodeattr [-f genders] -V [-U] attr
       nodeattr [-f genders] -l [node]
       nodeattr [-f genders] -k
       nodeattr [-f genders] -d genders
       nodeattr [-f genders] --expand
       nodeattr [-f genders] --compress

DESCRIPTION
       When  invoked  with  the -q , -c , -n , or -s arguments, nodeattr reads
       the genders file and outputs a list of nodes that match  the  specified
       query.  The nodes are listed in hostlist format, comma separated lists,
       newline separated lists, or space separated lists  respectively.   Gen-
       ders  queries  will query the genders database for a set of nodes based
       on the  union,  intersection,  difference,  or  complement  of  genders
       attributes  and  values.  The set operation union is represented by two
       pipe symbols ('||'), intersection by two ampersand symbols ('&&'), dif-
       ference  by  two minus symbols ('--'), and complement by a tilde ('~').
       Parentheses may be used to change the  order  of  operations.   The  -X
       argument and query can be used to exclude nodes from the resulting out-
       put.  A query can be replaced with the -A option to cause  nodeattr  to
       print all the nodes listed in the genders database.

       When  called  with  a node name (optional) and attribute name, nodeattr
       returns 0 to the environment if the node has the attribute; else 1.  If
       -v  is present, the attribute name and any value (see below) is printed
       on the standard output.  If a node name is  not  specified,  the  local
       host is assumed.

       When  called with the -Q argument, nodeattr will check if the node name
       (optional) is met by the attribute and value  conditions  specified  in
       the  query.  If the conditions are met, nodeattr returns 0 to the envi-
       ronment; else 1.  The query format is identical to  the  format  listed
       above.  If a node name is not specified, the local host is assumed.

       The -V option causes nodeattr to print all of the values that exist for
       a particular attribute.  Also specifing -U with -V causes  nodeattr  to
       print out only unique values for the particular attribute.

       The  -l option causes nodeattr to print the attributes of the specified
       node.  If no node is listed, all attributes in  the  genders  file  are
       listed.

       The  -k option checks the genders file for parse errors and proper for-
       matting.  If errors are found, information about the error will be out-
       put to standard error.

       Nodeattr  will  always  check the default genders file, but a different
       genders file can be specified with the -f option.

       The -d option allows the specified genders database to be  compared  to
       the  filename  indicated  by the -f option or the default genders data-
       base.  The differences contained in the specified database will be out-
       put to standard error.

       The  --expand  option  will  take  a  genders database, expand all hos-
       tranges, and output a new genders database.   The  subsequent  database
       will be identical to the first, but every node will be listed on a sep-
       arate line.  This option may be useful for debugging or determining the
       difference between databases.

       The  --compress  is  opposite of the --expand option.  It will output a
       new identical genders database with hostranges of nodes with  identical
       attributes.   Depending  on  the  setup  of  your genders database, the
       resulting database may be longer or shorter.  This option may be useful
       as a beginning step to compressing an existing genders database.

       Attribute names may optionally appear in the genders file with an equal
       sign followed by a value.  Nodeattr ignores these  values  except  when
       the  -v  option requests that the value, if any, be displayed; and when
       an attribute is specified on the command line with a  value,  in  which
       case  only  an  attribute  with the specified value in the genders file
       will match.

EXAMPLES
       Retrieve a comma separated list of all login nodes:

              nodeattr -c login

       Retrieve a hostlist formatted list of all login nodes:

              nodeattr -q login

       Retrieve a comma separated list of nodes with 4 cpus:

              nodeattr -c cpus=4

       Retrieve a comma separated list of all login and management nodes:

              nodeattr -c "login||mgmt"

       Retrieve a comma separated list of all login nodes with 4 cpus:

              nodeattr -c "login&&cpus=4"

       Retrieve a comma separated list of all nodes that are not login or man-
       agement nodes:

              nodeattr -c "~(login||mgmt)"

       To use nodeattr with pdsh to run a command on all fddi nodes:

              pdsh -w`nodeattr -c fddi` command

       To  use  nodeattr  in  a ksh script to collect a list of users on login
       nodes:

              for i in `nodeattr -n login`; do rsh $i who; done

       To verify whether or not this node is a head node:

              nodeattr head && echo yes

       To verify whether or not this node is a head node and ntpserver:

              nodeattr -Q "head&&ntpserver" && echo yes

FILES
       /etc/genders


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+-----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE     |
       +---------------+-----------------------+
       |Availability   | library/libgenders    |
       +---------------+-----------------------+
       |Stability      | Pass-through volatile |
       +---------------+-----------------------+
SEE ALSO
       libgenders(3)



NOTES
       This    software    was    built    from    source     available     at
       https://github.com/oracle/solaris-userland.    The  original  community
       source     was      downloaded      from       http://downloads.source-
       forge.net/project/genders/genders/1.22-1/genders-1.22.tar.gz

       Further information about this software can be found on the open source
       community website at https://github.com/chaos/genders.



LLNL                              August 2003                      NODEATTR(1)