mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-07-12 14:40:50 +02:00
Imported from ../bash-2.01.tar.gz.
This commit is contained in:
+166
-124
@@ -5,13 +5,13 @@
|
||||
@c %**end of header
|
||||
|
||||
@ignore
|
||||
last change: Mon Nov 25 11:47:06 EST 1996
|
||||
last change: Mon May 19 12:55:22 EDT 1997
|
||||
@end ignore
|
||||
|
||||
@set EDITION 2.0
|
||||
@set VERSION 2.0
|
||||
@set UPDATED 25 November 1996
|
||||
@set UPDATE-MONTH November 1996
|
||||
@set VERSION 2.01
|
||||
@set UPDATED 19 May 1997
|
||||
@set UPDATE-MONTH May 1997
|
||||
|
||||
@iftex
|
||||
@finalout
|
||||
@@ -272,8 +272,8 @@ from it, that are all in the same process group.
|
||||
|
||||
@item job control
|
||||
@cindex job control
|
||||
A mechanism by which users can selectively start and stop execution
|
||||
of processes.
|
||||
A mechanism by which users can selectively stop (suspend) and restart
|
||||
(resume) execution of processes.
|
||||
|
||||
@item metacharacter
|
||||
@cindex metacharacter
|
||||
@@ -717,7 +717,7 @@ has a non-zero exit status, then execute @var{alternate-consequents}.
|
||||
The syntax of the @code{case} command is:
|
||||
|
||||
@example
|
||||
@code{case @var{word} in [@var{pattern} [| @var{pattern}]@dots{}) @var{commands} ;;]@dots{} esac}
|
||||
@code{case @var{word} in [ ( @var{pattern} [| @var{pattern}]@dots{}) @var{commands} ;;]@dots{} esac}
|
||||
@end example
|
||||
|
||||
Selectively execute @var{commands} based upon @var{word} matching
|
||||
@@ -744,7 +744,7 @@ echo " legs."
|
||||
@end example
|
||||
|
||||
The @var{expression} is evaluated according to the rules described
|
||||
below ((@pxref{Arithmetic Evaluation}).
|
||||
below (@pxref{Arithmetic Evaluation}).
|
||||
If the value of the expression is non-zero, the return status is 0;
|
||||
otherwise the return status is 1. This is exactly equivalent to
|
||||
@example
|
||||
@@ -794,7 +794,7 @@ between these two constructs due to historical reasons. The braces
|
||||
are @code{reserved words}, so they must be separated from the @var{list}
|
||||
by @code{blank}s. The parentheses are @code{operators}, and are
|
||||
recognized as separate tokens by the shell even if they are not separated
|
||||
from @code{list} by whitespace.
|
||||
from the @var{list} by whitespace.
|
||||
|
||||
The exit status of both of these constructs is the exit status of
|
||||
@var{list}.
|
||||
@@ -825,10 +825,9 @@ the exit status of the last command executed in the body.
|
||||
When a function is executed, the arguments to the
|
||||
function become the positional parameters
|
||||
during its execution (@pxref{Positional Parameters}).
|
||||
The special parameter
|
||||
@samp{#} that gives the number of positional parameters
|
||||
is updated to reflect the change. Positional parameter @code{0}
|
||||
is unchanged.
|
||||
The special parameter @samp{#} that expands to the number of
|
||||
positional parameters is updated to reflect the change.
|
||||
Positional parameter @code{0} is unchanged.
|
||||
|
||||
If the builtin command @code{return}
|
||||
is executed in a function, the function completes and
|
||||
@@ -919,8 +918,11 @@ of the @code{IFS}
|
||||
special variable. That is, @code{"$*"} is equivalent
|
||||
to @code{"$1@var{c}$2@var{c}@dots{}"}, where @var{c}
|
||||
is the first character of the value of the @code{IFS}
|
||||
variable. If @code{IFS}
|
||||
is null or unset, the parameters are separated by spaces.
|
||||
variable.
|
||||
If @code{IFS} is unset, the parameters are separated by spaces.
|
||||
If @code{IFS} is null, the parameters are joined without intervening
|
||||
separators.
|
||||
|
||||
|
||||
@item @@
|
||||
Expands to the positional parameters, starting from one. When the
|
||||
@@ -1020,7 +1022,7 @@ Only brace expansion, word splitting, and filename expansion
|
||||
can change the number of words of the expansion; other expansions
|
||||
expand a single word to a single word.
|
||||
The only exceptions to this are the expansions of
|
||||
@code{"$@@"} (@pxref{Special Parameters}) and @code{"$@{[@@]@}"}
|
||||
@code{"$@@"} (@pxref{Special Parameters}) and @code{"$@{@var{name}[@@]@}"}
|
||||
(@pxref{Arrays}).
|
||||
|
||||
After all expansions, @code{quote removal} (@pxref{Quote Removal})
|
||||
@@ -1050,7 +1052,7 @@ If the first character of @var{parameter} is an exclamation point,
|
||||
a level of variable indirection is introduced.
|
||||
Bash uses the value of the variable formed from the rest of
|
||||
@var{parameter} as the name of the variable; this variable is then
|
||||
expanded and that value used in the rest of the substitution, rather
|
||||
expanded and that value is used in the rest of the substitution, rather
|
||||
than the value of @var{parameter} itself.
|
||||
This is known as @code{indirect expansion}.
|
||||
|
||||
@@ -1953,21 +1955,23 @@ Print out the user and system times used by the shell and its children.
|
||||
@item trap
|
||||
@btindex trap
|
||||
@example
|
||||
trap [-lp] [@var{arg}] [@var{sigspec}]
|
||||
trap [-lp] [@var{arg}] [@var{sigspec} @dots{}]
|
||||
@end example
|
||||
The commands in @var{arg} are to be read and executed when the
|
||||
shell receives signal @var{sigspec}. If @var{arg} is absent or
|
||||
equal to @samp{-}, all specified signals are reset to the values
|
||||
they had when the shell was started.
|
||||
If @var{arg} is the null string, then @var{sigspec} is ignored by
|
||||
the shell and commands it invokes.
|
||||
If @var{arg} is the null string, then the signal specified by
|
||||
each @var{sigspec} is ignored by the shell and commands it invokes.
|
||||
If @var{arg} is @samp{-p}, the shell displays the trap commands
|
||||
associated with each @var{sigspec}. If no arguments are supplied, or
|
||||
only @samp{-p} is given, @code{trap} prints the list of commands
|
||||
associated with each signal number. @var{sigspec} is either a signal
|
||||
name such as @code{SIGINT} or a signal number. If @var{sigspec} is
|
||||
@code{0} or @code{EXIT}, @var{arg} is executed when the shell exits.
|
||||
If @var{sigspec} is @code{DEBUG}, the command @var{arg} is executed
|
||||
associated with each signal number.
|
||||
Each @var{sigspec} is either a signal name such as @code{SIGINT} (with
|
||||
or without the @code{SIG} prefix) or a signal number.
|
||||
If a @var{sigspec}
|
||||
is @code{0} or @code{EXIT}, @var{arg} is executed when the shell exits.
|
||||
If a @var{sigspec} is @code{DEBUG}, the command @var{arg} is executed
|
||||
after every simple command.
|
||||
The @samp{-l} option causes the shell to print a list of signal names
|
||||
and their corresponding numbers.
|
||||
@@ -2136,7 +2140,7 @@ quotes. The @samp{-D} and @samp{--dump-strings} invocation options
|
||||
list the translatable strings found in a script
|
||||
(@pxref{Locale Translation}).
|
||||
|
||||
The expansion @code{$@{var:}@var{length}@code{[:}@var{offset}@code{]@}},
|
||||
The expansion @code{$@{var:}@var{offset}@code{[:}@var{length}@code{]@}},
|
||||
which expands to the substring of @code{var}'s value of length
|
||||
@var{length}, optionally beginning at @var{offset}, is present
|
||||
(@pxref{Shell Parameter Expansion}).
|
||||
@@ -2155,7 +2159,7 @@ Bash can expand positional parameters beyond @code{$9} using
|
||||
Bash has process substitution (@pxref{Process Substitution}).
|
||||
|
||||
Bash automatically assigns variables that provide information about the
|
||||
current user (@code{UID} and @code{EUID}), the current host
|
||||
current user (@code{UID}, @code{EUID}, and @code{GROUPS}), the current host
|
||||
(@code{HOSTTYPE}, @code{OSTYPE}, @code{MACHTYPE}, and @code{HOSTNAME}),
|
||||
and the instance of Bash that is running (@code{BASH},
|
||||
@code{BASH_VERSION}, and @code{BASH_VERSINFO}. @xref{Bash Variables},
|
||||
@@ -2172,7 +2176,8 @@ Bash functions are permitted to have local variables using the
|
||||
@code{local} builtin, and thus useful recursive functions may be written.
|
||||
|
||||
Variable assignments preceding commands affect only that command, even
|
||||
builtins and functions. In @code{sh}, all variable assignments
|
||||
builtins and functions (@pxref{Environment}).
|
||||
In @code{sh}, all variable assignments
|
||||
preceding commands are global unless the command is executed from the
|
||||
file system.
|
||||
|
||||
@@ -2249,14 +2254,16 @@ used as shell input, a @samp{-n} option to remove various variable
|
||||
attributes, and @samp{name=value} arguments to set variable attributes
|
||||
and values simultaneously.
|
||||
|
||||
The Bash @code{cd} and @code{pwd} builtins each take @samp{-L} and
|
||||
@samp{-P} builtins to switch between logical and physical modes.
|
||||
The Bash @code{cd} and @code{pwd} builtins (@pxref{Bourne Shell Builtins})
|
||||
each take @samp{-L} and @samp{-P} builtins to switch between logical and
|
||||
physical modes.
|
||||
|
||||
The Bash @code{type} builtin is more extensive and gives more information
|
||||
about the names it finds.
|
||||
about the names it finds (@pxref{Bash Builtins}).
|
||||
|
||||
Bash implements a @code{csh}-like directory stack, and provides the
|
||||
@code{pushd}, @code{popd}, and @code{dirs} builtins to manipulate it.
|
||||
@code{pushd}, @code{popd}, and @code{dirs} builtins to manipulate it
|
||||
(@pxref{C Shell Builtins}).
|
||||
Bash also makes the directory stack visible as the value of the
|
||||
@code{DIRSTACK} shell variable.
|
||||
|
||||
@@ -2304,10 +2311,11 @@ trapping @code{SIGSEGV}. If the shell is started from a process with
|
||||
function call), the shell misbehaves badly.
|
||||
|
||||
@item
|
||||
In a questionable attempt at security, the @sc{SVR4.2} shell
|
||||
will alter its real
|
||||
In a questionable attempt at security, the @sc{SVR4.2} shell,
|
||||
when invoked without the @samp{-p} option, will alter its real
|
||||
and effective @sc{UID} and @sc{GID} if they are less than some
|
||||
threshold value, commonly 100. This can lead to unexpected results.
|
||||
magic threshold value, commonly 100.
|
||||
This can lead to unexpected results.
|
||||
|
||||
@item
|
||||
The @sc{SVR4.2} shell does not allow users to trap @code{SIGALRM} or
|
||||
@@ -2330,7 +2338,7 @@ with a @samp{-}.
|
||||
@item
|
||||
The @sc{SVR4.2} shell exits a script if any builtin fails; Bash exits
|
||||
a script only if one of the @sc{POSIX.2} special builtins fails, and
|
||||
only for certain failures, as enumerated in the @code{POSIX.2} standard.
|
||||
only for certain failures, as enumerated in the @sc{POSIX.2} standard.
|
||||
|
||||
@item
|
||||
The @sc{SVR4.2} shell behaves differently when invoked as @code{jsh}
|
||||
@@ -2454,12 +2462,12 @@ arguments, exchanges the top two directories.
|
||||
@table @code
|
||||
@item +@var{N}
|
||||
Brings the @var{N}th directory (counting from the left of the
|
||||
list printed by @code{dirs}) to the top of the list by rotating
|
||||
the stack.
|
||||
list printed by @code{dirs}, starting with zero) to the top of
|
||||
the list by rotating the stack.
|
||||
@item -@var{N}
|
||||
Brings the @var{N}th directory (counting from the right of the
|
||||
list printed by @code{dirs}) to the top of the list by rotating
|
||||
the stack.
|
||||
list printed by @code{dirs}, starting with zero) to the top of
|
||||
the list by rotating the stack.
|
||||
@item -n
|
||||
Suppresses the normal change of directory when adding directories
|
||||
to the stack, so that only the stack is manipulated.
|
||||
@@ -2644,8 +2652,9 @@ The @var{commands} are executed after each selection until a
|
||||
point the @code{select} command completes.
|
||||
|
||||
Bash also has adopted command timing from the Korn shell. If the
|
||||
@code{time} reserved word precedes a pipeline or simple command,
|
||||
timing statistics for the pipeline are displayed when it completes.
|
||||
@code{time} reserved word precedes a pipeline, which may consist
|
||||
of a single command, timing statistics for the pipeline are displayed
|
||||
when it completes.
|
||||
The statistics currently consist of elapsed (wall-clock) time and
|
||||
user and system time consumed by the command's execution.
|
||||
|
||||
@@ -2751,11 +2760,6 @@ not arrive.
|
||||
@item LINENO
|
||||
The line number in the script or shell function currently executing.
|
||||
|
||||
@item ENV
|
||||
If this variable is set when Bash is invoked to execute a shell
|
||||
script, its value is expanded and used as the name of a startup file
|
||||
to read before executing the script. @xref{Bash Startup Files}.
|
||||
|
||||
@item FCEDIT
|
||||
The editor used as a default by the @code{fc} builtin command.
|
||||
|
||||
@@ -2992,12 +2996,12 @@ in the script. If no commands are executed, the exit status is 0.
|
||||
@section Bash Startup Files
|
||||
@cindex startup files
|
||||
|
||||
This section describs how bash executes its startup files.
|
||||
If any of the files exist but cannot be read, bash reports an error.
|
||||
This section describs how Bash executes its startup files.
|
||||
If any of the files exist but cannot be read, Bash reports an error.
|
||||
Tildes are expanded in file names as described above under
|
||||
Tilde Expansion (@pxref{Tilde Expansion}).
|
||||
|
||||
When Bash is invoked as a login shell, it first reads and
|
||||
When Bash is invoked as an interactive login shell, it first reads and
|
||||
executes commands from the file @file{/etc/profile}, if that file exists.
|
||||
After reading that file, it looks for @file{~/.bash_profile},
|
||||
@file{~/.bash_login}, and @file{~/.profile}, in that order, and reads
|
||||
@@ -3059,7 +3063,7 @@ for startup files.
|
||||
In this mode, the @code{ENV} variable is expanded and commands are read
|
||||
and executed from the file whose name is the expanded value.
|
||||
No other startup files are read.
|
||||
This is done by both interactive and non-interactive shells.
|
||||
This is done by interactive shells only.
|
||||
|
||||
Bash attempts to determine when it is being run by the remote shell
|
||||
daemon, usually @code{rshd}. If Bash determines it is being run by
|
||||
@@ -3093,6 +3097,16 @@ else
|
||||
fi
|
||||
@end example
|
||||
|
||||
Alternatively, you may test the value of the @samp{-} special parameter.
|
||||
It contains @code{i} when the shell is interactive. For example:
|
||||
|
||||
@example
|
||||
case "$-" in
|
||||
*i*) echo This shell is interactive ;;
|
||||
*) echo This shell is not interactive ;;
|
||||
esac
|
||||
@end example
|
||||
|
||||
@node Bash Builtins
|
||||
@section Bash Builtin Commands
|
||||
|
||||
@@ -3173,9 +3187,9 @@ Remove any current binding for @var{keyseq}
|
||||
@example
|
||||
builtin [@var{shell-builtin} [@var{args}]]
|
||||
@end example
|
||||
Run a shell builtin. This is useful when you wish to rename a
|
||||
shell builtin to be a function, but need the functionality of the
|
||||
builtin within the function itself.
|
||||
Run a shell builtin. This is useful when you wish to define a
|
||||
shell function with the same name as a shell builtin, but need the
|
||||
functionality of the builtin within the function itself.
|
||||
|
||||
@item command
|
||||
@btindex command
|
||||
@@ -3423,7 +3437,7 @@ The errors checked for are transposed characters,
|
||||
a missing character, and a character too many.
|
||||
If a correction is found, the corrected path is printed,
|
||||
and the command proceeds.
|
||||
This option is enabled by default, but is only used by interactive shells.
|
||||
This option is only used by interactive shells.
|
||||
|
||||
@item checkhash
|
||||
If this is set, Bash checks that a command found in the hash
|
||||
@@ -3470,7 +3484,8 @@ the Readline editing buffer, allowing further modification.
|
||||
@item hostcomplete
|
||||
If set, and Readline is being used, Bash will attempt to perform
|
||||
hostname completion when a word beginning with @samp{@@} is being
|
||||
completed (@pxref{Commands For Completion}).
|
||||
completed (@pxref{Commands For Completion}). This option is enabled
|
||||
by default.
|
||||
|
||||
@item interactive_comments
|
||||
Allow a word beginning with @samp{#}
|
||||
@@ -3718,7 +3733,7 @@ same as @code{-x}.
|
||||
|
||||
@item -p
|
||||
Turn on privileged mode.
|
||||
In this mode, the @code{$ENV}
|
||||
In this mode, the @code{$BASH_ENV}
|
||||
file is not processed, and shell functions
|
||||
are not inherited from the environment. This is enabled automatically
|
||||
on startup if the effective user (group) id is not equal to the real
|
||||
@@ -3962,6 +3977,11 @@ do not normally treat them specially.
|
||||
|
||||
@vtable @code
|
||||
|
||||
@item BASH_ENV
|
||||
If this variable is set when Bash is invoked to execute a shell
|
||||
script, its value is expanded and used as the name of a startup file
|
||||
to read before executing the script. @xref{Bash Startup Files}.
|
||||
|
||||
@item TIMEFORMAT
|
||||
The value of this parameter is used as a format string specifying
|
||||
how the timing information for pipelines prefixed with the @code{time}
|
||||
@@ -4002,7 +4022,9 @@ the form @var{MM}m@var{SS}.@var{FF}s.
|
||||
The value of @var{p} determines whether or not the fraction is included.
|
||||
|
||||
If this variable is not set, bash acts as if it had the value
|
||||
@example
|
||||
@code{$'\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS'}.
|
||||
@end example
|
||||
If the value is null, no timing information is displayed.
|
||||
A trailing newline is added when the format string is displayed.
|
||||
|
||||
@@ -4086,6 +4108,10 @@ The numeric real user id of the current user.
|
||||
@item EUID
|
||||
The numeric effective user id of the current user.
|
||||
|
||||
@item GROUPS
|
||||
An array variable containing the list of groups of which the current
|
||||
user is a member.
|
||||
|
||||
@item PPID
|
||||
The process id of the shell's parent process.
|
||||
|
||||
@@ -4184,7 +4210,7 @@ The value of @code{MACHTYPE}.
|
||||
|
||||
@item SHLVL
|
||||
Incremented by one each time a new instance of Bash is started. This is
|
||||
intended to be an account of how deeply your Bash shells are nested.
|
||||
intended to be a count of how deeply your Bash shells are nested.
|
||||
|
||||
@item OPTERR
|
||||
If set to the value 1, Bash displays error messages
|
||||
@@ -4198,9 +4224,13 @@ selected with a variable starting with @code{LC_}.
|
||||
This variable overrides the value of @code{LANG} and any other
|
||||
@code{LC_} variable specifying a locale category.
|
||||
|
||||
@item LC_COLLATE
|
||||
This variable determines the collation order used when sorting the
|
||||
results of filename expansion (@pxref{Filename Expansion}).
|
||||
|
||||
@item LC_MESSAGES
|
||||
This variable determines the locale used to translate double-quoted
|
||||
strings preceded by a @samp{$}.
|
||||
strings preceded by a @samp{$} (@pxref{Locale Translation}).
|
||||
|
||||
@item IGNOREEOF
|
||||
Controls the action of the shell on receipt of an @code{EOF} character
|
||||
@@ -4608,14 +4638,6 @@ the POSIX.2 standard, and include things like passing incorrect options,
|
||||
redirection errors, variable assignment errors for assignments preceding
|
||||
the command name, and so on.
|
||||
|
||||
@ignore
|
||||
@item
|
||||
The environment passed to executed commands is not sorted. Neither is
|
||||
the output of @code{set}. This is not strictly Posix.2 behavior, but
|
||||
@code{sh} does it this way. @code{ksh} does not. It's not necessary to
|
||||
sort the environment; no program should rely on it being sorted.
|
||||
@end ignore
|
||||
|
||||
@item
|
||||
If the @code{cd} builtin finds a directory to change to
|
||||
using @code{$CDPATH}, the
|
||||
@@ -4641,6 +4663,10 @@ Process substitution is not available.
|
||||
Assignment statements preceding @sc{POSIX.2} @code{special} builtins
|
||||
persist in the shell environment after the builtin completes.
|
||||
|
||||
@item
|
||||
The @code{export} and @code{readonly} builtin commands display their
|
||||
output in the format required by @sc{POSIX.2}.
|
||||
|
||||
@end enumerate
|
||||
|
||||
There is other @sc{POSIX.2} behavior that Bash does not implement.
|
||||
@@ -4826,9 +4852,10 @@ kill [-s @var{sigspec}] [-n @var{signum}] [-@var{sigspec}] @var{jobspec}
|
||||
kill -l [@var{sigspec}]
|
||||
@end example
|
||||
Send a signal specified by @var{sigspec} or @var{signum} to the process
|
||||
named by @var{jobspec}. @var{sigspec} is either a signal name such as
|
||||
@code{SIGINT} or a signal number; @var{signum} is a signal number. If
|
||||
@var{sigspec} and @var{signum} are not present, @code{SIGTERM} is used.
|
||||
named by @var{jobspec}.
|
||||
@var{sigspec} is either a signal name such as @code{SIGINT} (with or without
|
||||
the @code{SIG} prefix) or a signal number; @var{signum} is a signal number.
|
||||
If @var{sigspec} and @var{signum} are not present, @code{SIGTERM} is used.
|
||||
The @samp{-l} option lists the signal names, or the signal name
|
||||
corresponding to @var{sigspec}.
|
||||
|
||||
@@ -4878,8 +4905,8 @@ supplied process @sc{ID}s.
|
||||
This variable controls how the shell interacts with the user and
|
||||
job control. If this variable exists then single word simple
|
||||
commands without redirects are treated as candidates for resumption
|
||||
of an existing job. There is no ambiguity allowed; if you have
|
||||
more than one job beginning with the string that you have typed, then
|
||||
of an existing job. There is no ambiguity allowed; if there is
|
||||
more than one job beginning with the string typed, then
|
||||
the most recently accessed job will be selected.
|
||||
The name of a stopped job, in this context, is the command line
|
||||
used to start it. If this variable is set to the value @samp{exact},
|
||||
@@ -4912,7 +4939,7 @@ version of Unix (and, someday, @sc{GNU}). Other independent ports exist for
|
||||
@sc{OS/2}, Windows 95, and Windows @sc{NT}.
|
||||
|
||||
@menu
|
||||
* Basic Installation:: Generic installation instructions.
|
||||
* Basic Installation:: Installation instructions.
|
||||
|
||||
* Compilers and Options:: How to set special options for various
|
||||
systems.
|
||||
@@ -4941,7 +4968,7 @@ version of Unix (and, someday, @sc{GNU}). Other independent ports exist for
|
||||
@cindex Bash installation
|
||||
@cindex Bash configuration
|
||||
|
||||
These are generic installation instructions for Bash.
|
||||
These are installation instructions for Bash.
|
||||
|
||||
The @code{configure} shell script attempts to guess correct
|
||||
values for various system-dependent variables used during
|
||||
@@ -4969,8 +4996,17 @@ The file @file{configure.in} is used to create @code{configure}
|
||||
by a program called Autoconf. You only need
|
||||
@file{configure.in} if you want to change it or regenerate
|
||||
@code{configure} using a newer version of Autoconf. If
|
||||
you do this, make sure you are using Autoconf version 2.9 or
|
||||
newer.
|
||||
you do this, make sure you are using Autoconf version 2.10 or
|
||||
newer.
|
||||
|
||||
If you need to change @file{configure.in} or regenerate
|
||||
@code{configure}, you will need to create two files:
|
||||
@file{_distribution} and @file{_patchlevel}. @file{_distribution}
|
||||
should contain the major and minor version numbers of the Bash
|
||||
distribution, for example @samp{2.01}. @file{_patchlevel} should
|
||||
contain the patch level of the Bash distribution, @samp{0} for
|
||||
example. The script @file{support/mkconffiles} has been provided
|
||||
to automate the creation of these files.
|
||||
|
||||
The simplest way to compile Bash is:
|
||||
|
||||
@@ -5153,6 +5189,19 @@ Here is a complete list of the @samp{--enable-} and
|
||||
@samp{--with-} options that the Bash @code{configure} recognizes.
|
||||
|
||||
@table @code
|
||||
@item --with-afs
|
||||
Define if you are using the Andrew File System from Transarc.
|
||||
|
||||
@item --with-curses
|
||||
Use the curses library instead of the termcap library. This should
|
||||
be supplied if your system has an inadequate or incomplete termcap
|
||||
database.
|
||||
|
||||
@item --with-glibc-malloc
|
||||
Use the @sc{GNU} libc version of @code{malloc} in
|
||||
@file{lib/malloc/gmalloc.c}. This is somewhat slower than the
|
||||
default @code{malloc}, but wastes considerably less space.
|
||||
|
||||
@item --with-gnu-malloc
|
||||
Use the @sc{GNU} version of
|
||||
@code{malloc} in @file{lib/malloc/malloc.c}. This is not the same
|
||||
@@ -5160,15 +5209,8 @@ Use the @sc{GNU} version of
|
||||
derived from the 4.2 @sc{BSD} @code{malloc}. This @code{malloc} is
|
||||
very fast, but wastes a lot of space. This option is enabled by
|
||||
default. The @file{NOTES} file contains a list of systems for
|
||||
which this should be turned off.
|
||||
|
||||
@item --with-glibc-malloc
|
||||
Use the @sc{GNU} libc version of @code{malloc} in
|
||||
@file{lib/malloc/gmalloc.c}. This is somewhat slower than the
|
||||
default @code{malloc}, but wastes considerably less space.
|
||||
|
||||
@item --with-afs
|
||||
Define if you are using the Andrew File System from Transarc.
|
||||
which this should be turned off, and @code{configure} disables this
|
||||
option automatically for a number of systems.
|
||||
|
||||
@item --with-purify
|
||||
Define this to use the Purify memory allocation checker from Pure
|
||||
@@ -5190,32 +5232,48 @@ enabled by default, unless the operating system does not provide the
|
||||
necessary support.
|
||||
|
||||
@table @code
|
||||
@item --enable-job-control
|
||||
This enables job control features, if the @sc{OS} supports them.
|
||||
|
||||
@item --enable-alias
|
||||
Allow alias expansion and include the @code{alias} and @code{unalias}
|
||||
builtins.
|
||||
|
||||
@item --enable-readline
|
||||
Include support for command-line editing and history with the Bash
|
||||
version of the Readline library.
|
||||
|
||||
@item --enable-history
|
||||
Include command history and the @code{fc} and @code{history}
|
||||
builtin commands.
|
||||
@item --enable-array-variables
|
||||
Include support for one-dimensional array shell variables.
|
||||
|
||||
@item --enable-bang-history
|
||||
Include support for @code{csh}-like history substitution.
|
||||
|
||||
@item --enable-brace-expansion
|
||||
Include @code{csh}-like brace expansion
|
||||
( @code{b@{a,b@}c} @expansion{} @code{bac bbc} ).
|
||||
|
||||
@item --enable-command-timing
|
||||
Include support for recognizing @code{time} as a reserved word and for
|
||||
displaying timing statistics for the pipeline following @code{time}. This
|
||||
allows pipelines as well as shell builtins and functions to be timed.
|
||||
|
||||
@item --enable-directory-stack
|
||||
Include support for a @code{csh}-like directory stack and the
|
||||
@code{pushd}, @code{popd}, and @code{dirs} builtins.
|
||||
|
||||
@item --enable-restricted
|
||||
Include support for a @dfn{restricted shell}. If this is enabled, Bash,
|
||||
when called as @code{rbash}, enters a restricted mode. See
|
||||
@ref{The Restricted Shell}, for a description of restricted mode.
|
||||
@item --enable-disabled-builtins
|
||||
Allow builtin commands to be invoked via @samp{builtin xxx}
|
||||
even after @code{xxx} has been disabled using @samp{enable -n xxx}.
|
||||
See @ref{Bash Builtins}, for details of the @code{builtin} and
|
||||
@code{enable} builtin commands.
|
||||
|
||||
@item --enable-dparen-arithmetic
|
||||
Include support for the @code{ksh} @code{((@dots{}))} command.
|
||||
|
||||
@item --enable-help-builtin
|
||||
Include the @code{help} builtin, which displays help on shell builtins and
|
||||
variables.
|
||||
|
||||
@item --enable-history
|
||||
Include command history and the @code{fc} and @code{history}
|
||||
builtin commands.
|
||||
|
||||
@item --enable-job-control
|
||||
This enables job control features, if the @sc{OS} supports them.
|
||||
|
||||
@item --enable-process-substitution
|
||||
This enables process substitution (@pxref{Process Substitution}) if
|
||||
@@ -5226,35 +5284,19 @@ Turn on the interpretation of a number of backslash-escaped characters
|
||||
in the @code{$PS1}, @code{$PS2}, @code{$PS3}, and @code{$PS4} prompt
|
||||
strings.
|
||||
|
||||
@item --enable-readline
|
||||
Include support for command-line editing and history with the Bash
|
||||
version of the Readline library.
|
||||
|
||||
@item --enable-restricted
|
||||
Include support for a @dfn{restricted shell}. If this is enabled, Bash,
|
||||
when called as @code{rbash}, enters a restricted mode. See
|
||||
@ref{The Restricted Shell}, for a description of restricted mode.
|
||||
|
||||
@item --enable-select
|
||||
Include the @code{ksh} @code{select} builtin, which allows the
|
||||
generation of simple menus.
|
||||
|
||||
@item --enable-help-builtin
|
||||
Include the @code{help} builtin, which displays help on shell builtins and
|
||||
variables.
|
||||
|
||||
@item --enable-array-variables
|
||||
Include support for one-dimensional array shell variables.
|
||||
|
||||
@item --enable-dparen-arithmetic
|
||||
Include support for the @code{ksh} @code{((@dots{}))} command.
|
||||
|
||||
@item --enable-brace-expansion
|
||||
Include @code{csh}-like brace expansion
|
||||
( @code{b@{a,b@}c} @expansion{} @code{bac bbc} ).
|
||||
|
||||
@item --enable-disabled-builtins
|
||||
Allow builtin commands to be invoked via @samp{builtin xxx}
|
||||
even after @code{xxx} has been disabled using @samp{enable -n xxx}.
|
||||
See @ref{Bash Builtins}, for details of the @code{builtin} and
|
||||
@code{enable} builtin commands.
|
||||
|
||||
@item --enable-command-timing
|
||||
Include support for recognizing @code{time} as a reserved word and for
|
||||
displaying timing statistics for the pipeline following @code{time}. This
|
||||
allows pipelines as well as shell builtins and functions to be timed.
|
||||
|
||||
@item --enable-usg-echo-default
|
||||
Make the @code{echo} builtin expand backslash-escaped characters by default,
|
||||
without requiring the @samp{-e} option. This makes the Bash @code{echo}
|
||||
@@ -5280,7 +5322,7 @@ version of Bash that you have.
|
||||
|
||||
Once you have determined that a bug actually exists, use the
|
||||
@code{bashbug} command to submit a bug report.
|
||||
If you have a fix, you are welcome to mail that as well!
|
||||
If you have a fix, you are encouraged to mail that as well!
|
||||
Suggestions and `philosophical' bug reports may be mailed
|
||||
to @code{bug-bash@@prep.ai.MIT.Edu} or posted to the Usenet
|
||||
newsgroup @code{gnu.bash.bug}.
|
||||
|
||||
Reference in New Issue
Block a user