bash: Bash Builtins

1 
1 4.2 Bash Builtin Commands
1 =========================
1 
1 This section describes builtin commands which are unique to or have been
1 extended in Bash.  Some of these commands are specified in the POSIX
1 standard.
1 
1 'alias'
1           alias [-p] [NAME[=VALUE] ...]
1 
1      Without arguments or with the '-p' option, 'alias' prints the list
1      of aliases on the standard output in a form that allows them to be
1      reused as input.  If arguments are supplied, an alias is defined
1      for each NAME whose VALUE is given.  If no VALUE is given, the name
11      and value of the alias is printed.  Aliases are described in ⇒
      Aliases.
1 
1 'bind'
1           bind [-m KEYMAP] [-lpsvPSVX]
1           bind [-m KEYMAP] [-q FUNCTION] [-u FUNCTION] [-r KEYSEQ]
1           bind [-m KEYMAP] -f FILENAME
1           bind [-m KEYMAP] -x KEYSEQ:SHELL-COMMAND
1           bind [-m KEYMAP] KEYSEQ:FUNCTION-NAME
1           bind [-m KEYMAP] KEYSEQ:READLINE-COMMAND
1 
1      Display current Readline (⇒Command Line Editing) key and
1      function bindings, bind a key sequence to a Readline function or
1      macro, or set a Readline variable.  Each non-option argument is a
11      command as it would appear in a Readline initialization file (⇒
      Readline Init File), but each binding or command must be passed
1      as a separate argument; e.g., '"\C-x\C-r":re-read-init-file'.
1 
1      Options, if supplied, have the following meanings:
1 
1      '-m KEYMAP'
1           Use KEYMAP as the keymap to be affected by the subsequent
1           bindings.  Acceptable KEYMAP names are 'emacs',
1           'emacs-standard', 'emacs-meta', 'emacs-ctlx', 'vi', 'vi-move',
1           'vi-command', and 'vi-insert'.  'vi' is equivalent to
1           'vi-command' ('vi-move' is also a synonym); 'emacs' is
1           equivalent to 'emacs-standard'.
1 
1      '-l'
1           List the names of all Readline functions.
1 
1      '-p'
1           Display Readline function names and bindings in such a way
1           that they can be used as input or in a Readline initialization
1           file.
1 
1      '-P'
1           List current Readline function names and bindings.
1 
1      '-v'
1           Display Readline variable names and values in such a way that
1           they can be used as input or in a Readline initialization
1           file.
1 
1      '-V'
1           List current Readline variable names and values.
1 
1      '-s'
1           Display Readline key sequences bound to macros and the strings
1           they output in such a way that they can be used as input or in
1           a Readline initialization file.
1 
1      '-S'
1           Display Readline key sequences bound to macros and the strings
1           they output.
1 
1      '-f FILENAME'
1           Read key bindings from FILENAME.
1 
1      '-q FUNCTION'
1           Query about which keys invoke the named FUNCTION.
1 
1      '-u FUNCTION'
1           Unbind all keys bound to the named FUNCTION.
1 
1      '-r KEYSEQ'
1           Remove any current binding for KEYSEQ.
1 
1      '-x KEYSEQ:SHELL-COMMAND'
1           Cause SHELL-COMMAND to be executed whenever KEYSEQ is entered.
1           When SHELL-COMMAND is executed, the shell sets the
1           'READLINE_LINE' variable to the contents of the Readline line
1           buffer and the 'READLINE_POINT' variable to the current
1           location of the insertion point.  If the executed command
1           changes the value of 'READLINE_LINE' or 'READLINE_POINT',
1           those new values will be reflected in the editing state.
1 
1      '-X'
1           List all key sequences bound to shell commands and the
1           associated commands in a format that can be reused as input.
1 
1      The return status is zero unless an invalid option is supplied or
1      an error occurs.
1 
1 'builtin'
1           builtin [SHELL-BUILTIN [ARGS]]
1 
1      Run a shell builtin, passing it ARGS, and return its exit status.
1      This is useful when defining a shell function with the same name as
1      a shell builtin, retaining the functionality of the builtin within
1      the function.  The return status is non-zero if SHELL-BUILTIN is
1      not a shell builtin command.
1 
1 'caller'
1           caller [EXPR]
1 
1      Returns the context of any active subroutine call (a shell function
1      or a script executed with the '.' or 'source' builtins).
1 
1      Without EXPR, 'caller' displays the line number and source filename
1      of the current subroutine call.  If a non-negative integer is
1      supplied as EXPR, 'caller' displays the line number, subroutine
1      name, and source file corresponding to that position in the current
1      execution call stack.  This extra information may be used, for
1      example, to print a stack trace.  The current frame is frame 0.
1 
1      The return value is 0 unless the shell is not executing a
1      subroutine call or EXPR does not correspond to a valid position in
1      the call stack.
1 
1 'command'
1           command [-pVv] COMMAND [ARGUMENTS ...]
1 
1      Runs COMMAND with ARGUMENTS ignoring any shell function named
1      COMMAND.  Only shell builtin commands or commands found by
1      searching the 'PATH' are executed.  If there is a shell function
1      named 'ls', running 'command ls' within the function will execute
1      the external command 'ls' instead of calling the function
1      recursively.  The '-p' option means to use a default value for
1      'PATH' that is guaranteed to find all of the standard utilities.
1      The return status in this case is 127 if COMMAND cannot be found or
1      an error occurred, and the exit status of COMMAND otherwise.
1 
1      If either the '-V' or '-v' option is supplied, a description of
1      COMMAND is printed.  The '-v' option causes a single word
1      indicating the command or file name used to invoke COMMAND to be
1      displayed; the '-V' option produces a more verbose description.  In
1      this case, the return status is zero if COMMAND is found, and
1      non-zero if not.
1 
1 'declare'
1           declare [-aAfFgilnrtux] [-p] [NAME[=VALUE] ...]
1 
1      Declare variables and give them attributes.  If no NAMEs are given,
1      then display the values of variables instead.
1 
1      The '-p' option will display the attributes and values of each
1      NAME.  When '-p' is used with NAME arguments, additional options,
1      other than '-f' and '-F', are ignored.
1 
1      When '-p' is supplied without NAME arguments, 'declare' will
1      display the attributes and values of all variables having the
1      attributes specified by the additional options.  If no other
1      options are supplied with '-p', 'declare' will display the
1      attributes and values of all shell variables.  The '-f' option will
1      restrict the display to shell functions.
1 
1      The '-F' option inhibits the display of function definitions; only
1      the function name and attributes are printed.  If the 'extdebug'
1      shell option is enabled using 'shopt' (⇒The Shopt Builtin),
1      the source file name and line number where each NAME is defined are
1      displayed as well.  '-F' implies '-f'.
1 
1      The '-g' option forces variables to be created or modified at the
1      global scope, even when 'declare' is executed in a shell function.
1      It is ignored in all other cases.
1 
1      The following options can be used to restrict output to variables
1      with the specified attributes or to give variables attributes:
1 
1      '-a'
1           Each NAME is an indexed array variable (⇒Arrays).
1 
1      '-A'
1           Each NAME is an associative array variable (⇒Arrays).
1 
1      '-f'
1           Use function names only.
1 
1      '-i'
1           The variable is to be treated as an integer; arithmetic
1           evaluation (⇒Shell Arithmetic) is performed when the
1           variable is assigned a value.
1 
1      '-l'
1           When the variable is assigned a value, all upper-case
1           characters are converted to lower-case.  The upper-case
1           attribute is disabled.
1 
1      '-n'
1           Give each NAME the NAMEREF attribute, making it a name
1           reference to another variable.  That other variable is defined
1           by the value of NAME.  All references, assignments, and
1           attribute modifications to NAME, except for those using or
1           changing the '-n' attribute itself, are performed on the
1           variable referenced by NAME's value.  The nameref attribute
1           cannot be applied to array variables.
1 
1      '-r'
1           Make NAMEs readonly.  These names cannot then be assigned
1           values by subsequent assignment statements or unset.
1 
1      '-t'
1           Give each NAME the 'trace' attribute.  Traced functions
1           inherit the 'DEBUG' and 'RETURN' traps from the calling shell.
1           The trace attribute has no special meaning for variables.
1 
1      '-u'
1           When the variable is assigned a value, all lower-case
1           characters are converted to upper-case.  The lower-case
1           attribute is disabled.
1 
1      '-x'
1           Mark each NAME for export to subsequent commands via the
1           environment.
1 
1      Using '+' instead of '-' turns off the attribute instead, with the
1      exceptions that '+a' may not be used to destroy an array variable
1      and '+r' will not remove the readonly attribute.  When used in a
1      function, 'declare' makes each NAME local, as with the 'local'
1      command, unless the '-g' option is used.  If a variable name is
1      followed by =VALUE, the value of the variable is set to VALUE.
1 
1      When using '-a' or '-A' and the compound assignment syntax to
1      create array variables, additional attributes do not take effect
1      until subsequent assignments.
1 
1      The return status is zero unless an invalid option is encountered,
1      an attempt is made to define a function using '-f foo=bar', an
1      attempt is made to assign a value to a readonly variable, an
1      attempt is made to assign a value to an array variable without
1      using the compound assignment syntax (⇒Arrays), one of the
1      NAMES is not a valid shell variable name, an attempt is made to
1      turn off readonly status for a readonly variable, an attempt is
1      made to turn off array status for an array variable, or an attempt
1      is made to display a non-existent function with '-f'.
1 
1 'echo'
1           echo [-neE] [ARG ...]
1 
1      Output the ARGs, separated by spaces, terminated with a newline.
1      The return status is 0 unless a write error occurs.  If '-n' is
1      specified, the trailing newline is suppressed.  If the '-e' option
1      is given, interpretation of the following backslash-escaped
1      characters is enabled.  The '-E' option disables the interpretation
1      of these escape characters, even on systems where they are
1      interpreted by default.  The 'xpg_echo' shell option may be used to
1      dynamically determine whether or not 'echo' expands these escape
1      characters by default.  'echo' does not interpret '--' to mean the
1      end of options.
1 
1      'echo' interprets the following escape sequences:
1      '\a'
1           alert (bell)
1      '\b'
1           backspace
1      '\c'
1           suppress further output
1      '\e'
1      '\E'
1           escape
1      '\f'
1           form feed
1      '\n'
1           new line
1      '\r'
1           carriage return
1      '\t'
1           horizontal tab
1      '\v'
1           vertical tab
1      '\\'
1           backslash
1      '\0NNN'
1           the eight-bit character whose value is the octal value NNN
1           (zero to three octal digits)
1      '\xHH'
1           the eight-bit character whose value is the hexadecimal value
1           HH (one or two hex digits)
1      '\uHHHH'
1           the Unicode (ISO/IEC 10646) character whose value is the
1           hexadecimal value HHHH (one to four hex digits)
1      '\UHHHHHHHH'
1           the Unicode (ISO/IEC 10646) character whose value is the
1           hexadecimal value HHHHHHHH (one to eight hex digits)
1 
1 'enable'
1           enable [-a] [-dnps] [-f FILENAME] [NAME ...]
1 
1      Enable and disable builtin shell commands.  Disabling a builtin
1      allows a disk command which has the same name as a shell builtin to
1      be executed without specifying a full pathname, even though the
1      shell normally searches for builtins before disk commands.  If '-n'
1      is used, the NAMEs become disabled.  Otherwise NAMEs are enabled.
1      For example, to use the 'test' binary found via '$PATH' instead of
1      the shell builtin version, type 'enable -n test'.
1 
1      If the '-p' option is supplied, or no NAME arguments appear, a list
1      of shell builtins is printed.  With no other arguments, the list
1      consists of all enabled shell builtins.  The '-a' option means to
1      list each builtin with an indication of whether or not it is
1      enabled.
1 
1      The '-f' option means to load the new builtin command NAME from
1      shared object FILENAME, on systems that support dynamic loading.
1      The '-d' option will delete a builtin loaded with '-f'.
1 
1      If there are no options, a list of the shell builtins is displayed.
1      The '-s' option restricts 'enable' to the POSIX special builtins.
1      If '-s' is used with '-f', the new builtin becomes a special
1      builtin (⇒Special Builtins).
1 
1      The return status is zero unless a NAME is not a shell builtin or
1      there is an error loading a new builtin from a shared object.
1 
1 'help'
1           help [-dms] [PATTERN]
1 
1      Display helpful information about builtin commands.  If PATTERN is
1      specified, 'help' gives detailed help on all commands matching
1      PATTERN, otherwise a list of the builtins is printed.
1 
1      Options, if supplied, have the following meanings:
1 
1      '-d'
1           Display a short description of each PATTERN
1      '-m'
1           Display the description of each PATTERN in a manpage-like
1           format
1      '-s'
1           Display only a short usage synopsis for each PATTERN
1 
1      The return status is zero unless no command matches PATTERN.
1 
1 'let'
1           let EXPRESSION [EXPRESSION ...]
1 
1      The 'let' builtin allows arithmetic to be performed on shell
1      variables.  Each EXPRESSION is evaluated according to the rules
1      given below in ⇒Shell Arithmetic.  If the last EXPRESSION
1      evaluates to 0, 'let' returns 1; otherwise 0 is returned.
1 
1 'local'
1           local [OPTION] NAME[=VALUE] ...
1 
1      For each argument, a local variable named NAME is created, and
1      assigned VALUE.  The OPTION can be any of the options accepted by
1      'declare'.  'local' can only be used within a function; it makes
1      the variable NAME have a visible scope restricted to that function
1      and its children.  If NAME is '-', the set of shell options is made
1      local to the function in which 'local' is invoked: shell options
1      changed using the 'set' builtin inside the function are restored to
1      their original values when the function returns.  The return status
1      is zero unless 'local' is used outside a function, an invalid NAME
1      is supplied, or NAME is a readonly variable.
1 
1 'logout'
1           logout [N]
1 
1      Exit a login shell, returning a status of N to the shell's parent.
1 
1 'mapfile'
1           mapfile [-d DELIM] [-n COUNT] [-O ORIGIN] [-s COUNT] [-t] [-u FD]
1               [-C CALLBACK] [-c QUANTUM] [ARRAY]
1 
1      Read lines from the standard input into the indexed array variable
1      ARRAY, or from file descriptor FD if the '-u' option is supplied.
1      The variable 'MAPFILE' is the default ARRAY.  Options, if supplied,
1      have the following meanings:
1 
1      '-d'
1           The first character of DELIM is used to terminate each input
1           line, rather than newline.
1      '-n'
1           Copy at most COUNT lines.  If COUNT is 0, all lines are
1           copied.
1      '-O'
1           Begin assigning to ARRAY at index ORIGIN.  The default index
1           is 0.
1      '-s'
1           Discard the first COUNT lines read.
1      '-t'
1           Remove a trailing DELIM (default newline) from each line read.
1      '-u'
1           Read lines from file descriptor FD instead of the standard
1           input.
1      '-C'
1           Evaluate CALLBACK each time QUANTUMP lines are read.  The '-c'
1           option specifies QUANTUM.
1      '-c'
1           Specify the number of lines read between each call to
1           CALLBACK.
1 
1      If '-C' is specified without '-c', the default quantum is 5000.
1      When CALLBACK is evaluated, it is supplied the index of the next
1      array element to be assigned and the line to be assigned to that
1      element as additional arguments.  CALLBACK is evaluated after the
1      line is read but before the array element is assigned.
1 
1      If not supplied with an explicit origin, 'mapfile' will clear ARRAY
1      before assigning to it.
1 
1      'mapfile' returns successfully unless an invalid option or option
1      argument is supplied, ARRAY is invalid or unassignable, or ARRAY is
1      not an indexed array.
1 
1 'printf'
1           printf [-v VAR] FORMAT [ARGUMENTS]
1 
1      Write the formatted ARGUMENTS to the standard output under the
1      control of the FORMAT.  The '-v' option causes the output to be
1      assigned to the variable VAR rather than being printed to the
1      standard output.
1 
1      The FORMAT is a character string which contains three types of
1      objects: plain characters, which are simply copied to standard
1      output, character escape sequences, which are converted and copied
1      to the standard output, and format specifications, each of which
1      causes printing of the next successive ARGUMENT.  In addition to
1      the standard 'printf(1)' formats, 'printf' interprets the following
1      extensions:
1 
1      '%b'
1           Causes 'printf' to expand backslash escape sequences in the
11           corresponding ARGUMENT in the same way as 'echo -e' (⇒
           Bash Builtins).
1      '%q'
1           Causes 'printf' to output the corresponding ARGUMENT in a
1           format that can be reused as shell input.
1      '%(DATEFMT)T'
1           Causes 'printf' to output the date-time string resulting from
1           using DATEFMT as a format string for 'strftime'(3).  The
1           corresponding ARGUMENT is an integer representing the number
1           of seconds since the epoch.  Two special argument values may
1           be used: -1 represents the current time, and -2 represents the
1           time the shell was invoked.  If no argument is specified,
1           conversion behaves as if -1 had been given.  This is an
1           exception to the usual 'printf' behavior.
1 
1      Arguments to non-string format specifiers are treated as C language
1      constants, except that a leading plus or minus sign is allowed, and
1      if the leading character is a single or double quote, the value is
1      the ASCII value of the following character.
1 
1      The FORMAT is reused as necessary to consume all of the ARGUMENTS.
1      If the FORMAT requires more ARGUMENTS than are supplied, the extra
1      format specifications behave as if a zero value or null string, as
1      appropriate, had been supplied.  The return value is zero on
1      success, non-zero on failure.
1 
1 'read'
1           read [-ers] [-a ANAME] [-d DELIM] [-i TEXT] [-n NCHARS]
1               [-N NCHARS] [-p PROMPT] [-t TIMEOUT] [-u FD] [NAME ...]
1 
1      One line is read from the standard input, or from the file
1      descriptor FD supplied as an argument to the '-u' option, split
1      into words as described above in ⇒Word Splitting, and the
1      first word is assigned to the first NAME, the second word to the
1      second NAME, and so on.  If there are more words than names, the
1      remaining words and their intervening delimiters are assigned to
1      the last NAME.  If there are fewer words read from the input stream
1      than names, the remaining names are assigned empty values.  The
1      characters in the value of the 'IFS' variable are used to split the
1      line into words using the same rules the shell uses for expansion
1      (described above in ⇒Word Splitting).  The backslash
1      character '\' may be used to remove any special meaning for the
1      next character read and for line continuation.  If no names are
1      supplied, the line read is assigned to the variable 'REPLY'.  The
1      exit status is zero, unless end-of-file is encountered, 'read'
1      times out (in which case the status is greater than 128), a
1      variable assignment error (such as assigning to a readonly
1      variable) occurs, or an invalid file descriptor is supplied as the
1      argument to '-u'.
1 
1      Options, if supplied, have the following meanings:
1 
1      '-a ANAME'
1           The words are assigned to sequential indices of the array
1           variable ANAME, starting at 0.  All elements are removed from
1           ANAME before the assignment.  Other NAME arguments are
1           ignored.
1 
1      '-d DELIM'
1           The first character of DELIM is used to terminate the input
1           line, rather than newline.
1 
1      '-e'
1           Readline (⇒Command Line Editing) is used to obtain the
1           line.  Readline uses the current (or default, if line editing
1           was not previously active) editing settings.
1 
1      '-i TEXT'
1           If Readline is being used to read the line, TEXT is placed
1           into the editing buffer before editing begins.
1 
1      '-n NCHARS'
1           'read' returns after reading NCHARS characters rather than
1           waiting for a complete line of input, but honors a delimiter
1           if fewer than NCHARS characters are read before the delimiter.
1 
1      '-N NCHARS'
1           'read' returns after reading exactly NCHARS characters rather
1           than waiting for a complete line of input, unless EOF is
1           encountered or 'read' times out.  Delimiter characters
1           encountered in the input are not treated specially and do not
1           cause 'read' to return until NCHARS characters are read.  The
1           result is not split on the characters in 'IFS'; the intent is
1           that the variable is assigned exactly the characters read
1           (with the exception of backslash; see the '-r' option below).
1 
1      '-p PROMPT'
1           Display PROMPT, without a trailing newline, before attempting
1           to read any input.  The prompt is displayed only if input is
1           coming from a terminal.
1 
1      '-r'
1           If this option is given, backslash does not act as an escape
1           character.  The backslash is considered to be part of the
1           line.  In particular, a backslash-newline pair may not be used
1           as a line continuation.
1 
1      '-s'
1           Silent mode.  If input is coming from a terminal, characters
1           are not echoed.
1 
1      '-t TIMEOUT'
1           Cause 'read' to time out and return failure if a complete line
1           of input (or a specified number of characters) is not read
1           within TIMEOUT seconds.  TIMEOUT may be a decimal number with
1           a fractional portion following the decimal point.  This option
1           is only effective if 'read' is reading input from a terminal,
1           pipe, or other special file; it has no effect when reading
1           from regular files.  If 'read' times out, 'read' saves any
1           partial input read into the specified variable NAME.  If
1           TIMEOUT is 0, 'read' returns immediately, without trying to
1           read and data.  The exit status is 0 if input is available on
1           the specified file descriptor, non-zero otherwise.  The exit
1           status is greater than 128 if the timeout is exceeded.
1 
1      '-u FD'
1           Read input from file descriptor FD.
1 
1 'readarray'
1           readarray [-d DELIM] [-n COUNT] [-O ORIGIN] [-s COUNT] [-t] [-u FD]
1               [-C CALLBACK] [-c QUANTUM] [ARRAY]
1 
1      Read lines from the standard input into the indexed array variable
1      ARRAY, or from file descriptor FD if the '-u' option is supplied.
1 
1      A synonym for 'mapfile'.
1 
1 'source'
1           source FILENAME
1 
1      A synonym for '.' (⇒Bourne Shell Builtins).
1 
1 'type'
1           type [-afptP] [NAME ...]
1 
1      For each NAME, indicate how it would be interpreted if used as a
1      command name.
1 
1      If the '-t' option is used, 'type' prints a single word which is
1      one of 'alias', 'function', 'builtin', 'file' or 'keyword', if NAME
1      is an alias, shell function, shell builtin, disk file, or shell
1      reserved word, respectively.  If the NAME is not found, then
1      nothing is printed, and 'type' returns a failure status.
1 
1      If the '-p' option is used, 'type' either returns the name of the
1      disk file that would be executed, or nothing if '-t' would not
1      return 'file'.
1 
1      The '-P' option forces a path search for each NAME, even if '-t'
1      would not return 'file'.
1 
1      If a command is hashed, '-p' and '-P' print the hashed value, which
1      is not necessarily the file that appears first in '$PATH'.
1 
1      If the '-a' option is used, 'type' returns all of the places that
1      contain an executable named FILE.  This includes aliases and
1      functions, if and only if the '-p' option is not also used.
1 
1      If the '-f' option is used, 'type' does not attempt to find shell
1      functions, as with the 'command' builtin.
1 
1      The return status is zero if all of the NAMES are found, non-zero
1      if any are not found.
1 
1 'typeset'
1           typeset [-afFgrxilnrtux] [-p] [NAME[=VALUE] ...]
1 
1      The 'typeset' command is supplied for compatibility with the Korn
1      shell.  It is a synonym for the 'declare' builtin command.
1 
1 'ulimit'
1           ulimit [-HSabcdefiklmnpqrstuvxPT] [LIMIT]
1 
1      'ulimit' provides control over the resources available to processes
1      started by the shell, on systems that allow such control.  If an
1      option is given, it is interpreted as follows:
1 
1      '-S'
1           Change and report the soft limit associated with a resource.
1 
1      '-H'
1           Change and report the hard limit associated with a resource.
1 
1      '-a'
1           All current limits are reported.
1 
1      '-b'
1           The maximum socket buffer size.
1 
1      '-c'
1           The maximum size of core files created.
1 
1      '-d'
1           The maximum size of a process's data segment.
1 
1      '-e'
1           The maximum scheduling priority ("nice").
1 
1      '-f'
1           The maximum size of files written by the shell and its
1           children.
1 
1      '-i'
1           The maximum number of pending signals.
1 
1      '-k'
1           The maximum number of kqueues that may be allocated.
1 
1      '-l'
1           The maximum size that may be locked into memory.
1 
1      '-m'
1           The maximum resident set size (many systems do not honor this
1           limit).
1 
1      '-n'
1           The maximum number of open file descriptors (most systems do
1           not allow this value to be set).
1 
1      '-p'
1           The pipe buffer size.
1 
1      '-q'
1           The maximum number of bytes in POSIX message queues.
1 
1      '-r'
1           The maximum real-time scheduling priority.
1 
1      '-s'
1           The maximum stack size.
1 
1      '-t'
1           The maximum amount of cpu time in seconds.
1 
1      '-u'
1           The maximum number of processes available to a single user.
1 
1      '-v'
1           The maximum amount of virtual memory available to the shell,
1           and, on some systems, to its children.
1 
1      '-x'
1           The maximum number of file locks.
1 
1      '-P'
1           The maximum number of pseudoterminals.
1 
1      '-T'
1           The maximum number of threads.
1 
1      If LIMIT is given, and the '-a' option is not used, LIMIT is the
1      new value of the specified resource.  The special LIMIT values
1      'hard', 'soft', and 'unlimited' stand for the current hard limit,
1      the current soft limit, and no limit, respectively.  A hard limit
1      cannot be increased by a non-root user once it is set; a soft limit
1      may be increased up to the value of the hard limit.  Otherwise, the
1      current value of the soft limit for the specified resource is
1      printed, unless the '-H' option is supplied.  When setting new
1      limits, if neither '-H' nor '-S' is supplied, both the hard and
1      soft limits are set.  If no option is given, then '-f' is assumed.
1      Values are in 1024-byte increments, except for '-t', which is in
1      seconds; '-p', which is in units of 512-byte blocks; '-P', '-T',
1      '-b', '-k', '-n' and '-u', which are unscaled values; and, when in
1      POSIX Mode (⇒Bash POSIX Mode), '-c' and '-f', which are in
1      512-byte increments.
1 
1      The return status is zero unless an invalid option or argument is
1      supplied, or an error occurs while setting a new limit.
1 
1 'unalias'
1           unalias [-a] [NAME ... ]
1 
1      Remove each NAME from the list of aliases.  If '-a' is supplied,
1      all aliases are removed.  Aliases are described in ⇒Aliases.
1