mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-06-27 15:43:18 +02:00
bash-5.0-rc1 release
This commit is contained in:
@@ -1,3 +1,41 @@
|
||||
This document details the changes between this version, bash-5.0-rc1, and
|
||||
the previous version, bash-5.0-beta2.
|
||||
|
||||
1. Changes to Bash
|
||||
|
||||
a. Fix to initial word completion detection code.
|
||||
|
||||
b. Fixed a bug that caused issues with assignment statements containing ^A in
|
||||
the value assigned when IFS contains ^A.
|
||||
|
||||
c. Added a fallback to fnmatch() when strcoll can't correctly deal with
|
||||
bracket expression character equivalence classes.
|
||||
|
||||
d. Fixed a bug that caused $BASH_COMMAND to contain the trap handler command
|
||||
when running a trap handler containing [[ or (( commands.
|
||||
|
||||
e. Fixed a bug that caused nameref assignments in the temporary environment
|
||||
to potentially create variables with invalid names.
|
||||
|
||||
f. Fixed a bug that caused `local -' to turn off alias expansion in scripts.
|
||||
|
||||
g. Fixed a parser issue with a command string containing EOF after an invalid
|
||||
command as an argument to a special builtin not causing a posix-mode shell
|
||||
to exit.
|
||||
|
||||
h. Made a slight change to the FNV-1 string hash algorithm used for associative
|
||||
arrays (corrected the initial seed).
|
||||
|
||||
2. Changes to Readline
|
||||
|
||||
3. New Features in Bash
|
||||
|
||||
a. The `select' command now supports command forms without a word list
|
||||
following `in'.
|
||||
|
||||
4. New Features in Readline
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
This document details the changes between this version, bash-5.0-beta2, and
|
||||
the previous version, bash-5.0-beta.
|
||||
|
||||
|
||||
+148
@@ -4762,3 +4762,151 @@ bashline.c
|
||||
from Luca Boccassi <bluca@debian.org>
|
||||
|
||||
[bash-5.0-beta2 frozen]
|
||||
|
||||
11/27
|
||||
-----
|
||||
bashline.c
|
||||
- attempt_shell_completion: better fix for problems with fix from
|
||||
11/16. Report and fix from Tom Ryder <tom@sanctum.geek.nz>
|
||||
|
||||
expr.c
|
||||
- expr_skipsubscript: fix return type. Report and fix from
|
||||
Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
||||
11/29
|
||||
-----
|
||||
subst.c
|
||||
- quote_escapes_internal: refactored quote_escapes into a function
|
||||
that takes an additional flag saying whether or not we are going
|
||||
to split the result. If we are not, and CTLESC is in IFS, we quote
|
||||
the CTLESC (ditto for CTLNUL) to prevent it being removed when the
|
||||
string is dequoted.
|
||||
- quote_escapes: call quote_escapes_internal with FLAGS == 0
|
||||
- quote_rhs: new function, calls quote_escapes with FLAGS == PF_NOSPLIT2
|
||||
so that a CTLESC will be quoted if CTLESC is in $IFS
|
||||
- parameter_brace_expand_word: call quote_rhs on the value of a variable
|
||||
if PFLAGS includes PF_ASSIGNRHS, indicating that we will not be
|
||||
splitting the word, but we will be dequoting it. Fixes bug reported
|
||||
by Martijn Dekker <martijn@inlv.org>
|
||||
- param_expand: same change as for parameter_brace_expand_word
|
||||
|
||||
execute_cmd.c
|
||||
- execute_in_subshell: if we are running a trap (running_trap > 0),
|
||||
turn off the SIG_INPROGRESS and SIG_CHANGED flags for that signal
|
||||
by calling run_trap_cleanup and reset running_trap to 0 (watch the
|
||||
second part!). Tagged for bash-5.1.
|
||||
|
||||
11/30
|
||||
-----
|
||||
lib/readline/doc/rltech.texi
|
||||
- rl_set_keymap_name: correct typo in the name; some updates to the
|
||||
description that clarify usage. Report from <hirooih@gmail.com>
|
||||
|
||||
12/4
|
||||
----
|
||||
aclocal.m4
|
||||
- BASH_FUNC_FNMATCH_EQUIV_FALLBACK: a test of whether fnmatch(3)
|
||||
understands bracket equivalence classes ([=c=]) for characters
|
||||
that collate with equal weights but are not identical
|
||||
|
||||
configure.ac,config.h.in
|
||||
- call BASH_FUNC_FNMATCH_EQUIV_FALLBACK and define
|
||||
FNMATCH_EQUIV_FALLBACK to 1 if it can be used for equivalence
|
||||
classes
|
||||
|
||||
12/5
|
||||
----
|
||||
execute_cmd.c
|
||||
- eval_arith_for_expr,execute_arith_command,execute_cond_command: make
|
||||
sure running_trap == 0 before we reset the_printed_command_except_trap
|
||||
Report from Peng Yu <pengyu.ut@gmail.com>
|
||||
|
||||
lib/glob/smatch.c
|
||||
- _fnmatch_fallback_wc: new function, takes two wide characters c1 and
|
||||
c2, converts them to a pattern ([[=c2=]]) and a string (c1) for
|
||||
fnmatch to determine whether or not they are members of the same
|
||||
equivalence class
|
||||
- collequiv_wc: call _fnmatch_fallback_wc if rangecmp_wc returns
|
||||
non-zero if FNMATCH_EQUIV_FALLBACK is defined, so we know that
|
||||
fnmatch understands equivalence classes. Another Posix test suite
|
||||
issue from Martin Rehak <martin.rehak@oracle.com>
|
||||
|
||||
12/6
|
||||
----
|
||||
redir.c
|
||||
- add missing cases to switch statements to shut up gcc
|
||||
|
||||
12/7
|
||||
----
|
||||
builtins/set.def
|
||||
- find_minus_o_option: new helper function, returns index into
|
||||
o_options given option name
|
||||
- minus_o_option_value,set_minus_o_option: use find_minus_o_option
|
||||
|
||||
general.c
|
||||
- new table of variables (currently all shopt options) that are
|
||||
modified by going into and out of posix mode; num_posix_options()
|
||||
returns the number of variables
|
||||
- get_posix_options: fill in a bitmap passed as an argument (or return
|
||||
a new one) of values of posix-mode-modified variables in the table
|
||||
- set_posix_options: set values of posix-mode-modified variables from
|
||||
the table using the passed bitmap for values
|
||||
|
||||
builtins/set.def
|
||||
- get_current_options: make the bitmap large enough to hold the options
|
||||
in the set table and the table of posix-mode-modified variables; call
|
||||
get_posix_options to fill in those values after the values from the
|
||||
o_options table
|
||||
- set_current_options: call set_posix_options to reset the values of
|
||||
the posix-mode-modified variables at the end of the bitmap, after
|
||||
the o_options values. Fixes issue reported by PJ Eby
|
||||
<pje@telecommunity.com>
|
||||
|
||||
12/9
|
||||
----
|
||||
parse.y
|
||||
- select_command: add two additional productions to support select
|
||||
commands without a word_list following the `in'. Fixes omission
|
||||
reported by Martijn Dekker <martijn@inlv.org>
|
||||
|
||||
12/11
|
||||
-----
|
||||
variables.c
|
||||
- assign_in_env: don't allow namerefs in temporary environment
|
||||
assignments to create variables with invalid names for export. Fixes
|
||||
bug reported by Grisha Levit <grishalevit@gmail.com>
|
||||
|
||||
12/14
|
||||
-----
|
||||
parse.y
|
||||
- don't change last_command_exit_value in the 'error yacc_EOF' production
|
||||
if the parser sets it to something non-zero; just make sure it
|
||||
indicates an error. Fixes problem with unexpected EOF in eval
|
||||
reported by Martijn Dekker <martijn@inlv.org>
|
||||
|
||||
12/17
|
||||
-----
|
||||
expr.c
|
||||
- exp2 -> expmuldiv
|
||||
|
||||
lib/sh/smatch.c
|
||||
- fnmatch: add extern declaration if FNMATCH_EQUIV_FALLBACK is being
|
||||
used
|
||||
|
||||
hashlib.c
|
||||
- hash_string: add FNV offset as initial value for hash instead of
|
||||
starting at 0, changes hash for associative arrays and requires a
|
||||
bunch of changes to the "right" test suite files
|
||||
|
||||
variables.c
|
||||
- rseed: make it explicitly 32 bits; that's all we're interested in
|
||||
anyway
|
||||
|
||||
12/18
|
||||
-----
|
||||
|
||||
variables.c
|
||||
- brand: add some comments, make the constants explicitly 32 bits;
|
||||
use signed 32-bit values for the intermediate calculations. The
|
||||
algorithm is still minstd
|
||||
|
||||
|
||||
@@ -941,7 +941,6 @@ tests/cond-regexp2.sub f
|
||||
tests/cond-regexp3.sub f
|
||||
tests/coproc.tests f
|
||||
tests/coproc.right f
|
||||
tests/coproc1.sub f
|
||||
tests/cprint.tests f
|
||||
tests/cprint.right f
|
||||
tests/dbg-support.right f
|
||||
|
||||
Vendored
+37
@@ -4223,3 +4223,40 @@ main(int c, char **v)
|
||||
[Define if you have a working sbrk function.])
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(BASH_FUNC_FNMATCH_EQUIV_FALLBACK,
|
||||
[AC_MSG_CHECKING(whether fnmatch can be used to check bracket equivalence classes)
|
||||
AC_CACHE_VAL(bash_cv_fnmatch_equiv_fallback,
|
||||
[AC_TRY_RUN([
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <stdio.h>
|
||||
#include <fnmatch.h>
|
||||
#include <locale.h>
|
||||
|
||||
char *pattern = "[[=a=]]";
|
||||
|
||||
/* char *string = "ä"; */
|
||||
unsigned char string[4] = { '\xc3', '\xa4', '\0' };
|
||||
|
||||
int
|
||||
main (int c, char **v)
|
||||
{
|
||||
setlocale (LC_ALL, "de_DE.UTF-8");
|
||||
if (fnmatch (pattern, (const char *)string, 0) != FNM_NOMATCH)
|
||||
exit (0);
|
||||
exit (1);
|
||||
}
|
||||
|
||||
], bash_cv_fnmatch_equiv_fallback=yes, bash_cv_fnmatch_equiv_fallback=no,
|
||||
[AC_MSG_WARN(cannot check fnmatch if cross compiling -- defaulting to no)
|
||||
bash_cv_fnmatch_equiv_fallback=no]
|
||||
)])
|
||||
AC_MSG_RESULT($bash_cv_fnmatch_equiv_fallback)
|
||||
if test "$bash_cv_fnmatch_equiv_fallback" = "yes" ; then
|
||||
bash_cv_fnmatch_equiv_value=1
|
||||
else
|
||||
bash_cv_fnmatch_equiv_value=0
|
||||
fi
|
||||
AC_DEFINE_UNQUOTED([FNMATCH_EQUIV_FALLBACK], [$bash_cv_fnmatch_equiv_value], [Whether fnmatch can be used for bracket equivalence classes])
|
||||
])
|
||||
|
||||
+2
-1
@@ -1583,7 +1583,8 @@ attempt_shell_completion (text, start, end)
|
||||
/* command completion if programmable completion fails */
|
||||
/* If we have a completion for the initial word, we can prefer that */
|
||||
in_command_position = s == start && (iw_compspec || STREQ (n, text)); /* XXX */
|
||||
foundcs = foundcs && (iw_compspec == 0);
|
||||
if (iw_compspec && in_command_position)
|
||||
foundcs = 0;
|
||||
}
|
||||
/* empty command name following command separator */
|
||||
else if (s >= e && n[0] == '\0' && text[0] == '\0' && start > 0 &&
|
||||
|
||||
@@ -38,7 +38,7 @@ Options:
|
||||
without any specific completion defined
|
||||
-E apply the completions and actions to "empty" commands --
|
||||
completion attempted on a blank line
|
||||
-I apply the completions and actions to the intial (usually the
|
||||
-I apply the completions and actions to the initial (usually the
|
||||
command) word
|
||||
|
||||
When completion is attempted, the actions are applied in the order the
|
||||
|
||||
+5
-1
@@ -1,7 +1,7 @@
|
||||
This file is echo.def, from which is created echo.c.
|
||||
It implements the builtin "echo" in Bash.
|
||||
|
||||
Copyright (C) 1987-2016 Free Software Foundation, Inc.
|
||||
Copyright (C) 1987-2018 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Bash, the Bourne Again SHell.
|
||||
|
||||
@@ -62,6 +62,10 @@ Options:
|
||||
0 to 3 octal digits
|
||||
\xHH the eight-bit character whose value is HH (hexadecimal). HH
|
||||
can be one or two hex digits
|
||||
\uHHHH the Unicode character whose value is the hexadecimal value HHHH.
|
||||
HHHH can be one to four hex digits.
|
||||
\UHHHHHHHH the Unicode character whose value is the hexadecimal value
|
||||
HHHHHHHH. HHHHHHHH can be one to eight hex digits.
|
||||
|
||||
Exit Status:
|
||||
Returns success unless a write error occurs.
|
||||
|
||||
+59
-41
@@ -1,7 +1,7 @@
|
||||
This file is set.def, from which is created set.c.
|
||||
It implements the "set" and "unset" builtins in Bash.
|
||||
|
||||
Copyright (C) 1987-2015 Free Software Foundation, Inc.
|
||||
Copyright (C) 1987-2018 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Bash, the Bourne Again SHell.
|
||||
|
||||
@@ -154,6 +154,8 @@ $END
|
||||
typedef int setopt_set_func_t __P((int, char *));
|
||||
typedef int setopt_get_func_t __P((char *));
|
||||
|
||||
static int find_minus_o_option __P((char *));
|
||||
|
||||
static void print_minus_o_option __P((char *, int, int));
|
||||
static void print_all_shell_variables __P((void));
|
||||
|
||||
@@ -242,6 +244,18 @@ const struct {
|
||||
((o_options[i].set_func) ? (*o_options[i].set_func) (onoff, name) \
|
||||
: (*o_options[i].variable = (onoff == FLAG_ON)))
|
||||
|
||||
static int
|
||||
find_minus_o_option (name)
|
||||
char *name;
|
||||
{
|
||||
register int i;
|
||||
|
||||
for (i = 0; o_options[i].name; i++)
|
||||
if (STREQ (name, o_options[i].name))
|
||||
return i;
|
||||
return -1;
|
||||
}
|
||||
|
||||
int
|
||||
minus_o_option_value (name)
|
||||
char *name;
|
||||
@@ -249,21 +263,17 @@ minus_o_option_value (name)
|
||||
register int i;
|
||||
int *on_or_off;
|
||||
|
||||
for (i = 0; o_options[i].name; i++)
|
||||
{
|
||||
if (STREQ (name, o_options[i].name))
|
||||
{
|
||||
if (o_options[i].letter)
|
||||
{
|
||||
on_or_off = find_flag (o_options[i].letter);
|
||||
return ((on_or_off == FLAG_UNKNOWN) ? -1 : *on_or_off);
|
||||
}
|
||||
else
|
||||
return (GET_BINARY_O_OPTION_VALUE (i, name));
|
||||
}
|
||||
}
|
||||
i = find_minus_o_option (name);
|
||||
if (i < 0)
|
||||
return (-1);
|
||||
|
||||
return (-1);
|
||||
if (o_options[i].letter)
|
||||
{
|
||||
on_or_off = find_flag (o_options[i].letter);
|
||||
return ((on_or_off == FLAG_UNKNOWN) ? -1 : *on_or_off);
|
||||
}
|
||||
else
|
||||
return (GET_BINARY_O_OPTION_VALUE (i, name));
|
||||
}
|
||||
|
||||
#define MINUS_O_FORMAT "%-15s\t%s\n"
|
||||
@@ -323,9 +333,12 @@ char *
|
||||
get_current_options ()
|
||||
{
|
||||
char *temp;
|
||||
int i;
|
||||
int i, posixopts;
|
||||
|
||||
temp = (char *)xmalloc (1 + N_O_OPTIONS);
|
||||
posixopts = num_posix_options (); /* shopts modified by posix mode */
|
||||
/* Make the buffer big enough to hold the set -o options and the shopt
|
||||
options modified by posix mode. */
|
||||
temp = (char *)xmalloc (1 + N_O_OPTIONS + posixopts);
|
||||
for (i = 0; o_options[i].name; i++)
|
||||
{
|
||||
if (o_options[i].letter)
|
||||
@@ -333,7 +346,11 @@ get_current_options ()
|
||||
else
|
||||
temp[i] = GET_BINARY_O_OPTION_VALUE (i, o_options[i].name);
|
||||
}
|
||||
temp[i] = '\0';
|
||||
|
||||
/* Add the shell options that are modified by posix mode to the end of the
|
||||
bitmap. They will be handled in set_current_options() */
|
||||
get_posix_options (temp+i);
|
||||
temp[i+posixopts] = '\0';
|
||||
return (temp);
|
||||
}
|
||||
|
||||
@@ -345,6 +362,7 @@ set_current_options (bitmap)
|
||||
|
||||
if (bitmap == 0)
|
||||
return;
|
||||
|
||||
for (i = 0; o_options[i].name; i++)
|
||||
{
|
||||
if (o_options[i].letter)
|
||||
@@ -352,6 +370,9 @@ set_current_options (bitmap)
|
||||
else
|
||||
SET_BINARY_O_OPTION_VALUE (i, bitmap[i] ? FLAG_ON : FLAG_OFF, o_options[i].name);
|
||||
}
|
||||
|
||||
/* Now reset the variables changed by posix mode */
|
||||
set_posix_options (bitmap+i);
|
||||
}
|
||||
|
||||
static int
|
||||
@@ -451,32 +472,29 @@ set_minus_o_option (on_or_off, option_name)
|
||||
{
|
||||
register int i;
|
||||
|
||||
for (i = 0; o_options[i].name; i++)
|
||||
i = find_minus_o_option (option_name);
|
||||
if (i < 0)
|
||||
{
|
||||
if (STREQ (option_name, o_options[i].name))
|
||||
{
|
||||
if (o_options[i].letter == 0)
|
||||
{
|
||||
previous_option_value = GET_BINARY_O_OPTION_VALUE (i, o_options[i].name);
|
||||
SET_BINARY_O_OPTION_VALUE (i, on_or_off, option_name);
|
||||
return (EXECUTION_SUCCESS);
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((previous_option_value = change_flag (o_options[i].letter, on_or_off)) == FLAG_ERROR)
|
||||
{
|
||||
sh_invalidoptname (option_name);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
else
|
||||
return (EXECUTION_SUCCESS);
|
||||
}
|
||||
|
||||
}
|
||||
sh_invalidoptname (option_name);
|
||||
return (EX_USAGE);
|
||||
}
|
||||
|
||||
sh_invalidoptname (option_name);
|
||||
return (EX_USAGE);
|
||||
if (o_options[i].letter == 0)
|
||||
{
|
||||
previous_option_value = GET_BINARY_O_OPTION_VALUE (i, o_options[i].name);
|
||||
SET_BINARY_O_OPTION_VALUE (i, on_or_off, option_name);
|
||||
return (EXECUTION_SUCCESS);
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((previous_option_value = change_flag (o_options[i].letter, on_or_off)) == FLAG_ERROR)
|
||||
{
|
||||
sh_invalidoptname (option_name);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
else
|
||||
return (EXECUTION_SUCCESS);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
@@ -612,6 +612,9 @@
|
||||
/* Define if you have the fnmatch function. */
|
||||
#undef HAVE_FNMATCH
|
||||
|
||||
/* Can fnmatch be used as a fallback to match [=equiv=] with collation weights? */
|
||||
#undef FNMATCH_EQUIV_FALLBACK
|
||||
|
||||
/* Define if you have the fpurge/__fpurge function. */
|
||||
#undef HAVE_FPURGE
|
||||
#undef HAVE___FPURGE
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#! /bin/sh
|
||||
# From configure.ac for Bash 5.0, version 5.003.
|
||||
# From configure.ac for Bash 5.0, version 5.005.
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.69 for bash 5.0-beta2.
|
||||
# Generated by GNU Autoconf 2.69 for bash 5.0-rc1.
|
||||
#
|
||||
# Report bugs to <bug-bash@gnu.org>.
|
||||
#
|
||||
@@ -581,8 +581,8 @@ MAKEFLAGS=
|
||||
# Identity of this package.
|
||||
PACKAGE_NAME='bash'
|
||||
PACKAGE_TARNAME='bash'
|
||||
PACKAGE_VERSION='5.0-beta2'
|
||||
PACKAGE_STRING='bash 5.0-beta2'
|
||||
PACKAGE_VERSION='5.0-rc1'
|
||||
PACKAGE_STRING='bash 5.0-rc1'
|
||||
PACKAGE_BUGREPORT='bug-bash@gnu.org'
|
||||
PACKAGE_URL=''
|
||||
|
||||
@@ -1394,7 +1394,7 @@ if test "$ac_init_help" = "long"; then
|
||||
# Omit some internal or obsolete options to make the list less imposing.
|
||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures bash 5.0-beta2 to adapt to many kinds of systems.
|
||||
\`configure' configures bash 5.0-rc1 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
@@ -1459,7 +1459,7 @@ fi
|
||||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of bash 5.0-beta2:";;
|
||||
short | recursive ) echo "Configuration of bash 5.0-rc1:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
@@ -1655,7 +1655,7 @@ fi
|
||||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
bash configure 5.0-beta2
|
||||
bash configure 5.0-rc1
|
||||
generated by GNU Autoconf 2.69
|
||||
|
||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||
@@ -2364,7 +2364,7 @@ cat >config.log <<_ACEOF
|
||||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by bash $as_me 5.0-beta2, which was
|
||||
It was created by bash $as_me 5.0-rc1, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
@@ -2759,7 +2759,7 @@ ac_config_headers="$ac_config_headers config.h"
|
||||
|
||||
|
||||
BASHVERS=5.0
|
||||
RELSTATUS=beta2
|
||||
RELSTATUS=rc1
|
||||
|
||||
case "$RELSTATUS" in
|
||||
alp*|bet*|dev*|rc*|releng*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
|
||||
@@ -4938,12 +4938,6 @@ fi
|
||||
CFLAGS=${CFLAGS-"$AUTO_CFLAGS"}
|
||||
# LDFLAGS=${LDFLAGS="$AUTO_LDFLAGS"} # XXX
|
||||
|
||||
# turn off paren warnings in gcc
|
||||
if test "$GCC" = yes # && test -n "$DEBUG"
|
||||
then
|
||||
CFLAGS="$CFLAGS -Wno-parentheses -Wno-format-security"
|
||||
fi
|
||||
|
||||
if test "$opt_profiling" = "yes"; then
|
||||
PROFILE_FLAGS=-pg
|
||||
case "$host_os" in
|
||||
@@ -15275,6 +15269,67 @@ $as_echo "#define HAVE_PRINTF_A_FORMAT 1" >>confdefs.h
|
||||
fi
|
||||
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fnmatch can be used to check bracket equivalence classes" >&5
|
||||
$as_echo_n "checking whether fnmatch can be used to check bracket equivalence classes... " >&6; }
|
||||
if ${bash_cv_fnmatch_equiv_fallback+:} false; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
if test "$cross_compiling" = yes; then :
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check fnmatch if cross compiling -- defaulting to no" >&5
|
||||
$as_echo "$as_me: WARNING: cannot check fnmatch if cross compiling -- defaulting to no" >&2;}
|
||||
bash_cv_fnmatch_equiv_fallback=no
|
||||
|
||||
else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <stdio.h>
|
||||
#include <fnmatch.h>
|
||||
#include <locale.h>
|
||||
|
||||
char *pattern = "[[=a=]]";
|
||||
|
||||
/* char *string = "ä"; */
|
||||
unsigned char string[4] = { '\xc3', '\xa4', '\0' };
|
||||
|
||||
int
|
||||
main (int c, char **v)
|
||||
{
|
||||
setlocale (LC_ALL, "de_DE.UTF-8");
|
||||
if (fnmatch (pattern, (const char *)string, 0) != FNM_NOMATCH)
|
||||
exit (0);
|
||||
exit (1);
|
||||
}
|
||||
|
||||
|
||||
_ACEOF
|
||||
if ac_fn_c_try_run "$LINENO"; then :
|
||||
bash_cv_fnmatch_equiv_fallback=yes
|
||||
else
|
||||
bash_cv_fnmatch_equiv_fallback=no
|
||||
fi
|
||||
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
|
||||
conftest.$ac_objext conftest.beam conftest.$ac_ext
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_fnmatch_equiv_fallback" >&5
|
||||
$as_echo "$bash_cv_fnmatch_equiv_fallback" >&6; }
|
||||
if test "$bash_cv_fnmatch_equiv_fallback" = "yes" ; then
|
||||
bash_cv_fnmatch_equiv_value=1
|
||||
else
|
||||
bash_cv_fnmatch_equiv_value=0
|
||||
fi
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
#define FNMATCH_EQUIV_FALLBACK $bash_cv_fnmatch_equiv_value
|
||||
_ACEOF
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal handlers must be reinstalled when invoked" >&5
|
||||
@@ -16301,6 +16356,16 @@ m88k-motorola-sysv3) LOCAL_CFLAGS=-DWAITPID_BROKEN ;;
|
||||
mips-pyramid-sysv4) LOCAL_CFLAGS=-Xa ;;
|
||||
esac
|
||||
|
||||
# turn off paren warnings in gcc
|
||||
if test "$GCC" = yes # && test -n "$DEBUG"
|
||||
then
|
||||
CFLAGS="$CFLAGS -Wno-parentheses -Wno-format-security"
|
||||
# if test -n "$DEBUG"
|
||||
# then
|
||||
# CFLAGS="$CFLAGS -Werror"
|
||||
# fi
|
||||
fi
|
||||
|
||||
#
|
||||
# Shared object configuration section. These values are generated by
|
||||
# ${srcdir}/support/shobj-conf
|
||||
@@ -16903,7 +16968,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||
# report actual input values of CONFIG_FILES etc. instead of their
|
||||
# values after options handling.
|
||||
ac_log="
|
||||
This file was extended by bash $as_me 5.0-beta2, which was
|
||||
This file was extended by bash $as_me 5.0-rc1, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
@@ -16969,7 +17034,7 @@ _ACEOF
|
||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||||
ac_cs_version="\\
|
||||
bash config.status 5.0-beta2
|
||||
bash config.status 5.0-rc1
|
||||
configured by $0, generated by GNU Autoconf 2.69,
|
||||
with options \\"\$ac_cs_config\\"
|
||||
|
||||
|
||||
+14
-8
@@ -21,10 +21,10 @@ dnl Process this file with autoconf to produce a configure script.
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
AC_REVISION([for Bash 5.0, version 5.003])dnl
|
||||
AC_REVISION([for Bash 5.0, version 5.005])dnl
|
||||
|
||||
define(bashvers, 5.0)
|
||||
define(relstatus, beta2)
|
||||
define(relstatus, rc1)
|
||||
|
||||
AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org])
|
||||
|
||||
@@ -474,12 +474,6 @@ dnl default values
|
||||
CFLAGS=${CFLAGS-"$AUTO_CFLAGS"}
|
||||
# LDFLAGS=${LDFLAGS="$AUTO_LDFLAGS"} # XXX
|
||||
|
||||
# turn off paren warnings in gcc
|
||||
if test "$GCC" = yes # && test -n "$DEBUG"
|
||||
then
|
||||
CFLAGS="$CFLAGS -Wno-parentheses -Wno-format-security"
|
||||
fi
|
||||
|
||||
dnl handle options that alter how bash is compiled and linked
|
||||
dnl these must come after the test for cc/gcc
|
||||
if test "$opt_profiling" = "yes"; then
|
||||
@@ -1030,6 +1024,8 @@ fi
|
||||
|
||||
BASH_FUNC_PRINTF_A_FORMAT
|
||||
|
||||
BASH_FUNC_FNMATCH_EQUIV_FALLBACK
|
||||
|
||||
dnl presence and behavior of OS functions
|
||||
BASH_SYS_REINSTALL_SIGHANDLERS
|
||||
BASH_SYS_JOB_CONTROL_MISSING
|
||||
@@ -1157,6 +1153,16 @@ m88k-motorola-sysv3) LOCAL_CFLAGS=-DWAITPID_BROKEN ;;
|
||||
mips-pyramid-sysv4) LOCAL_CFLAGS=-Xa ;;
|
||||
esac
|
||||
|
||||
# turn off paren warnings in gcc
|
||||
if test "$GCC" = yes # && test -n "$DEBUG"
|
||||
then
|
||||
CFLAGS="$CFLAGS -Wno-parentheses -Wno-format-security"
|
||||
# if test -n "$DEBUG"
|
||||
# then
|
||||
# CFLAGS="$CFLAGS -Werror"
|
||||
# fi
|
||||
fi
|
||||
|
||||
#
|
||||
# Shared object configuration section. These values are generated by
|
||||
# ${srcdir}/support/shobj-conf
|
||||
|
||||
+2699
-2698
File diff suppressed because it is too large
Load Diff
+9
-6
@@ -5,12 +5,12 @@
|
||||
.\" Case Western Reserve University
|
||||
.\" chet.ramey@case.edu
|
||||
.\"
|
||||
.\" Last Change: Mon Oct 22 09:55:27 EDT 2018
|
||||
.\" Last Change: Fri Dec 7 09:48:47 EST 2018
|
||||
.\"
|
||||
.\" bash_builtins, strip all but Built-Ins section
|
||||
.if \n(zZ=1 .ig zZ
|
||||
.if \n(zY=1 .ig zY
|
||||
.TH BASH 1 "2018 October 22" "GNU Bash 5.0"
|
||||
.TH BASH 1 "2018 December 7" "GNU Bash 5.0"
|
||||
.\"
|
||||
.\" There's some problem with having a `@'
|
||||
.\" in a tagged paragraph with the BSD man macros.
|
||||
@@ -629,8 +629,11 @@ of a semicolon to delimit commands.
|
||||
If a command is terminated by the control operator
|
||||
.BR & ,
|
||||
the shell executes the command in the \fIbackground\fP
|
||||
in a subshell. The shell does not wait for the command to
|
||||
finish, and the return status is 0. Commands separated by a
|
||||
in a subshell.
|
||||
The shell does not wait for the command to
|
||||
finish, and the return status is 0.
|
||||
These are referred to as \fIasynchronous\fP commands.
|
||||
Commands separated by a
|
||||
.B ;
|
||||
are executed sequentially; the shell waits for each
|
||||
command to terminate in turn. The return status is the
|
||||
@@ -8036,8 +8039,8 @@ Mark \fIname\fPs for export to subsequent commands via the environment.
|
||||
.PP
|
||||
Using `+' instead of `\-'
|
||||
turns off the attribute instead,
|
||||
with the exceptions that \fB+a\fP
|
||||
may not be used to destroy an array variable and \fB+r\fP will not
|
||||
with the exceptions that \fB+a\fP and \fB+A\fP
|
||||
may not be used to destroy array variables and \fB+r\fP will not
|
||||
remove the readonly attribute.
|
||||
When used in a function,
|
||||
.B declare
|
||||
|
||||
+10
-7
@@ -3,7 +3,7 @@
|
||||
</HEAD>
|
||||
<BODY><TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2018 October 22<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2018 December 7<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<BR><A HREF="#index">Index</A>
|
||||
@@ -836,8 +836,11 @@ If a command is terminated by the control operator
|
||||
<B>&</B>,
|
||||
|
||||
the shell executes the command in the <I>background</I>
|
||||
in a subshell. The shell does not wait for the command to
|
||||
finish, and the return status is 0. Commands separated by a
|
||||
in a subshell.
|
||||
The shell does not wait for the command to
|
||||
finish, and the return status is 0.
|
||||
These are referred to as <I>asynchronous</I> commands.
|
||||
Commands separated by a
|
||||
<B>;</B>
|
||||
|
||||
are executed sequentially; the shell waits for each
|
||||
@@ -10208,8 +10211,8 @@ Mark <I>name</I>s for export to subsequent commands via the environment.
|
||||
|
||||
Using `+' instead of `-'
|
||||
turns off the attribute instead,
|
||||
with the exceptions that <B>+a</B>
|
||||
may not be used to destroy an array variable and <B>+r</B> will not
|
||||
with the exceptions that <B>+a</B> and <B>+A</B>
|
||||
may not be used to destroy array variables and <B>+r</B> will not
|
||||
remove the readonly attribute.
|
||||
When used in a function,
|
||||
<B>declare</B>
|
||||
@@ -13916,7 +13919,7 @@ There may be only one active coprocess at a time.
|
||||
<HR>
|
||||
<TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.0<TH ALIGN=CENTER width=33%>2018 October 22<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.0<TH ALIGN=CENTER width=33%>2018 December 7<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<HR>
|
||||
@@ -14022,6 +14025,6 @@ There may be only one active coprocess at a time.
|
||||
</DL>
|
||||
<HR>
|
||||
This document was created by man2html from bash.1.<BR>
|
||||
Time: 19 November 2018 15:21:08 EST
|
||||
Time: 18 December 2018 11:43:50 EST
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
||||
+141
-139
@@ -2,9 +2,9 @@ This is bash.info, produced by makeinfo version 6.5 from
|
||||
bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 9 November 2018).
|
||||
Bash shell (version 5.0, 7 December 2018).
|
||||
|
||||
This is Edition 5.0, last updated 9 November 2018, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 7 December 2018, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Copyright (C) 1988-2018 Free Software Foundation, Inc.
|
||||
@@ -27,10 +27,10 @@ Bash Features
|
||||
*************
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 9 November 2018). The Bash home page is
|
||||
Bash shell (version 5.0, 7 December 2018). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.0, last updated 9 November 2018, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 7 December 2018, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -619,11 +619,12 @@ commands, equivalent to a semicolon.
|
||||
|
||||
If a command is terminated by the control operator '&', the shell
|
||||
executes the command asynchronously in a subshell. This is known as
|
||||
executing the command in the BACKGROUND. The shell does not wait for
|
||||
the command to finish, and the return status is 0 (true). When job
|
||||
control is not active (*note Job Control::), the standard input for
|
||||
asynchronous commands, in the absence of any explicit redirections, is
|
||||
redirected from '/dev/null'.
|
||||
executing the command in the BACKGROUND, and these are referred to as
|
||||
ASYNCHRONOUS commands. The shell does not wait for the command to
|
||||
finish, and the return status is 0 (true). When job control is not
|
||||
active (*note Job Control::), the standard input for asynchronous
|
||||
commands, in the absence of any explicit redirections, is redirected
|
||||
from '/dev/null'.
|
||||
|
||||
Commands separated by a ';' are executed sequentially; the shell
|
||||
waits for each command to terminate in turn. The return status is the
|
||||
@@ -3543,11 +3544,12 @@ standard.
|
||||
environment.
|
||||
|
||||
Using '+' instead of '-' turns off the attribute instead, with the
|
||||
exceptions that '+a' may not be used to destroy an array variable
|
||||
and '+r' will not remove the readonly attribute. When used in a
|
||||
function, 'declare' makes each NAME local, as with the 'local'
|
||||
command, unless the '-g' option is used. If a variable name is
|
||||
followed by =VALUE, the value of the variable is set to VALUE.
|
||||
exceptions that '+a' and '+A' may not be used to destroy array
|
||||
variables and '+r' will not remove the readonly attribute. When
|
||||
used in a function, 'declare' makes each NAME local, as with the
|
||||
'local' command, unless the '-g' option is used. If a variable
|
||||
name is followed by =VALUE, the value of the variable is set to
|
||||
VALUE.
|
||||
|
||||
When using '-a' or '-A' and the compound assignment syntax to
|
||||
create array variables, additional attributes do not take effect
|
||||
@@ -10984,8 +10986,8 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 7)
|
||||
* disown: Job Control Builtins.
|
||||
(line 92)
|
||||
* echo: Bash Builtins. (line 245)
|
||||
* enable: Bash Builtins. (line 294)
|
||||
* echo: Bash Builtins. (line 246)
|
||||
* enable: Bash Builtins. (line 295)
|
||||
* eval: Bourne Shell Builtins.
|
||||
(line 94)
|
||||
* exec: Bourne Shell Builtins.
|
||||
@@ -11002,26 +11004,26 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 143)
|
||||
* hash: Bourne Shell Builtins.
|
||||
(line 186)
|
||||
* help: Bash Builtins. (line 323)
|
||||
* help: Bash Builtins. (line 324)
|
||||
* history: Bash History Builtins.
|
||||
(line 40)
|
||||
* jobs: Job Control Builtins.
|
||||
(line 27)
|
||||
* kill: Job Control Builtins.
|
||||
(line 58)
|
||||
* let: Bash Builtins. (line 342)
|
||||
* local: Bash Builtins. (line 350)
|
||||
* logout: Bash Builtins. (line 364)
|
||||
* mapfile: Bash Builtins. (line 369)
|
||||
* let: Bash Builtins. (line 343)
|
||||
* local: Bash Builtins. (line 351)
|
||||
* logout: Bash Builtins. (line 365)
|
||||
* mapfile: Bash Builtins. (line 370)
|
||||
* popd: Directory Stack Builtins.
|
||||
(line 35)
|
||||
* printf: Bash Builtins. (line 415)
|
||||
* printf: Bash Builtins. (line 416)
|
||||
* pushd: Directory Stack Builtins.
|
||||
(line 53)
|
||||
* pwd: Bourne Shell Builtins.
|
||||
(line 206)
|
||||
* read: Bash Builtins. (line 459)
|
||||
* readarray: Bash Builtins. (line 553)
|
||||
* read: Bash Builtins. (line 460)
|
||||
* readarray: Bash Builtins. (line 554)
|
||||
* readonly: Bourne Shell Builtins.
|
||||
(line 216)
|
||||
* return: Bourne Shell Builtins.
|
||||
@@ -11030,7 +11032,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* shift: Bourne Shell Builtins.
|
||||
(line 256)
|
||||
* shopt: The Shopt Builtin. (line 9)
|
||||
* source: Bash Builtins. (line 562)
|
||||
* source: Bash Builtins. (line 563)
|
||||
* suspend: Job Control Builtins.
|
||||
(line 104)
|
||||
* test: Bourne Shell Builtins.
|
||||
@@ -11039,12 +11041,12 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 348)
|
||||
* trap: Bourne Shell Builtins.
|
||||
(line 354)
|
||||
* type: Bash Builtins. (line 567)
|
||||
* typeset: Bash Builtins. (line 599)
|
||||
* ulimit: Bash Builtins. (line 605)
|
||||
* type: Bash Builtins. (line 568)
|
||||
* typeset: Bash Builtins. (line 600)
|
||||
* ulimit: Bash Builtins. (line 606)
|
||||
* umask: Bourne Shell Builtins.
|
||||
(line 403)
|
||||
* unalias: Bash Builtins. (line 704)
|
||||
* unalias: Bash Builtins. (line 705)
|
||||
* unset: Bourne Shell Builtins.
|
||||
(line 421)
|
||||
* wait: Job Control Builtins.
|
||||
@@ -11699,115 +11701,115 @@ Node: Shell Commands19354
|
||||
Node: Simple Commands20226
|
||||
Node: Pipelines20857
|
||||
Node: Lists23789
|
||||
Node: Compound Commands25528
|
||||
Node: Looping Constructs26540
|
||||
Node: Conditional Constructs29035
|
||||
Node: Command Grouping40118
|
||||
Node: Coprocesses41597
|
||||
Node: GNU Parallel43500
|
||||
Node: Shell Functions47558
|
||||
Node: Shell Parameters54641
|
||||
Node: Positional Parameters59054
|
||||
Node: Special Parameters59954
|
||||
Node: Shell Expansions63708
|
||||
Node: Brace Expansion65831
|
||||
Node: Tilde Expansion68555
|
||||
Node: Shell Parameter Expansion71172
|
||||
Node: Command Substitution85628
|
||||
Node: Arithmetic Expansion86983
|
||||
Node: Process Substitution87915
|
||||
Node: Word Splitting89035
|
||||
Node: Filename Expansion90979
|
||||
Node: Pattern Matching93509
|
||||
Node: Quote Removal97495
|
||||
Node: Redirections97790
|
||||
Node: Executing Commands107348
|
||||
Node: Simple Command Expansion108018
|
||||
Node: Command Search and Execution109948
|
||||
Node: Command Execution Environment112324
|
||||
Node: Environment115308
|
||||
Node: Exit Status116967
|
||||
Node: Signals118637
|
||||
Node: Shell Scripts120604
|
||||
Node: Shell Builtin Commands123119
|
||||
Node: Bourne Shell Builtins125157
|
||||
Node: Bash Builtins145907
|
||||
Node: Modifying Shell Behavior174820
|
||||
Node: The Set Builtin175165
|
||||
Node: The Shopt Builtin185578
|
||||
Node: Special Builtins203150
|
||||
Node: Shell Variables204129
|
||||
Node: Bourne Shell Variables204566
|
||||
Node: Bash Variables206670
|
||||
Node: Bash Features237130
|
||||
Node: Invoking Bash238029
|
||||
Node: Bash Startup Files244042
|
||||
Node: Interactive Shells249145
|
||||
Node: What is an Interactive Shell?249555
|
||||
Node: Is this Shell Interactive?250204
|
||||
Node: Interactive Shell Behavior251019
|
||||
Node: Bash Conditional Expressions254506
|
||||
Node: Shell Arithmetic259083
|
||||
Node: Aliases261900
|
||||
Node: Arrays264520
|
||||
Node: The Directory Stack269886
|
||||
Node: Directory Stack Builtins270670
|
||||
Node: Controlling the Prompt273638
|
||||
Node: The Restricted Shell276404
|
||||
Node: Bash POSIX Mode278229
|
||||
Node: Job Control289162
|
||||
Node: Job Control Basics289622
|
||||
Node: Job Control Builtins294590
|
||||
Node: Job Control Variables299317
|
||||
Node: Command Line Editing300473
|
||||
Node: Introduction and Notation302144
|
||||
Node: Readline Interaction303767
|
||||
Node: Readline Bare Essentials304958
|
||||
Node: Readline Movement Commands306741
|
||||
Node: Readline Killing Commands307701
|
||||
Node: Readline Arguments309619
|
||||
Node: Searching310663
|
||||
Node: Readline Init File312849
|
||||
Node: Readline Init File Syntax313996
|
||||
Node: Conditional Init Constructs334435
|
||||
Node: Sample Init File338631
|
||||
Node: Bindable Readline Commands341748
|
||||
Node: Commands For Moving342952
|
||||
Node: Commands For History344801
|
||||
Node: Commands For Text349096
|
||||
Node: Commands For Killing352484
|
||||
Node: Numeric Arguments354965
|
||||
Node: Commands For Completion356104
|
||||
Node: Keyboard Macros360295
|
||||
Node: Miscellaneous Commands360982
|
||||
Node: Readline vi Mode366935
|
||||
Node: Programmable Completion367842
|
||||
Node: Programmable Completion Builtins375622
|
||||
Node: A Programmable Completion Example386315
|
||||
Node: Using History Interactively391555
|
||||
Node: Bash History Facilities392239
|
||||
Node: Bash History Builtins395244
|
||||
Node: History Interaction399775
|
||||
Node: Event Designators403395
|
||||
Node: Word Designators404614
|
||||
Node: Modifiers406251
|
||||
Node: Installing Bash407653
|
||||
Node: Basic Installation408790
|
||||
Node: Compilers and Options412048
|
||||
Node: Compiling For Multiple Architectures412789
|
||||
Node: Installation Names414482
|
||||
Node: Specifying the System Type415300
|
||||
Node: Sharing Defaults416016
|
||||
Node: Operation Controls416689
|
||||
Node: Optional Features417647
|
||||
Node: Reporting Bugs428165
|
||||
Node: Major Differences From The Bourne Shell429359
|
||||
Node: GNU Free Documentation License446211
|
||||
Node: Indexes471388
|
||||
Node: Builtin Index471842
|
||||
Node: Reserved Word Index478669
|
||||
Node: Variable Index481117
|
||||
Node: Function Index496868
|
||||
Node: Concept Index510171
|
||||
Node: Compound Commands25580
|
||||
Node: Looping Constructs26592
|
||||
Node: Conditional Constructs29087
|
||||
Node: Command Grouping40170
|
||||
Node: Coprocesses41649
|
||||
Node: GNU Parallel43552
|
||||
Node: Shell Functions47610
|
||||
Node: Shell Parameters54693
|
||||
Node: Positional Parameters59106
|
||||
Node: Special Parameters60006
|
||||
Node: Shell Expansions63760
|
||||
Node: Brace Expansion65883
|
||||
Node: Tilde Expansion68607
|
||||
Node: Shell Parameter Expansion71224
|
||||
Node: Command Substitution85680
|
||||
Node: Arithmetic Expansion87035
|
||||
Node: Process Substitution87967
|
||||
Node: Word Splitting89087
|
||||
Node: Filename Expansion91031
|
||||
Node: Pattern Matching93561
|
||||
Node: Quote Removal97547
|
||||
Node: Redirections97842
|
||||
Node: Executing Commands107400
|
||||
Node: Simple Command Expansion108070
|
||||
Node: Command Search and Execution110000
|
||||
Node: Command Execution Environment112376
|
||||
Node: Environment115360
|
||||
Node: Exit Status117019
|
||||
Node: Signals118689
|
||||
Node: Shell Scripts120656
|
||||
Node: Shell Builtin Commands123171
|
||||
Node: Bourne Shell Builtins125209
|
||||
Node: Bash Builtins145959
|
||||
Node: Modifying Shell Behavior174884
|
||||
Node: The Set Builtin175229
|
||||
Node: The Shopt Builtin185642
|
||||
Node: Special Builtins203214
|
||||
Node: Shell Variables204193
|
||||
Node: Bourne Shell Variables204630
|
||||
Node: Bash Variables206734
|
||||
Node: Bash Features237194
|
||||
Node: Invoking Bash238093
|
||||
Node: Bash Startup Files244106
|
||||
Node: Interactive Shells249209
|
||||
Node: What is an Interactive Shell?249619
|
||||
Node: Is this Shell Interactive?250268
|
||||
Node: Interactive Shell Behavior251083
|
||||
Node: Bash Conditional Expressions254570
|
||||
Node: Shell Arithmetic259147
|
||||
Node: Aliases261964
|
||||
Node: Arrays264584
|
||||
Node: The Directory Stack269950
|
||||
Node: Directory Stack Builtins270734
|
||||
Node: Controlling the Prompt273702
|
||||
Node: The Restricted Shell276468
|
||||
Node: Bash POSIX Mode278293
|
||||
Node: Job Control289226
|
||||
Node: Job Control Basics289686
|
||||
Node: Job Control Builtins294654
|
||||
Node: Job Control Variables299381
|
||||
Node: Command Line Editing300537
|
||||
Node: Introduction and Notation302208
|
||||
Node: Readline Interaction303831
|
||||
Node: Readline Bare Essentials305022
|
||||
Node: Readline Movement Commands306805
|
||||
Node: Readline Killing Commands307765
|
||||
Node: Readline Arguments309683
|
||||
Node: Searching310727
|
||||
Node: Readline Init File312913
|
||||
Node: Readline Init File Syntax314060
|
||||
Node: Conditional Init Constructs334499
|
||||
Node: Sample Init File338695
|
||||
Node: Bindable Readline Commands341812
|
||||
Node: Commands For Moving343016
|
||||
Node: Commands For History344865
|
||||
Node: Commands For Text349160
|
||||
Node: Commands For Killing352548
|
||||
Node: Numeric Arguments355029
|
||||
Node: Commands For Completion356168
|
||||
Node: Keyboard Macros360359
|
||||
Node: Miscellaneous Commands361046
|
||||
Node: Readline vi Mode366999
|
||||
Node: Programmable Completion367906
|
||||
Node: Programmable Completion Builtins375686
|
||||
Node: A Programmable Completion Example386379
|
||||
Node: Using History Interactively391619
|
||||
Node: Bash History Facilities392303
|
||||
Node: Bash History Builtins395308
|
||||
Node: History Interaction399839
|
||||
Node: Event Designators403459
|
||||
Node: Word Designators404678
|
||||
Node: Modifiers406315
|
||||
Node: Installing Bash407717
|
||||
Node: Basic Installation408854
|
||||
Node: Compilers and Options412112
|
||||
Node: Compiling For Multiple Architectures412853
|
||||
Node: Installation Names414546
|
||||
Node: Specifying the System Type415364
|
||||
Node: Sharing Defaults416080
|
||||
Node: Operation Controls416753
|
||||
Node: Optional Features417711
|
||||
Node: Reporting Bugs428229
|
||||
Node: Major Differences From The Bourne Shell429423
|
||||
Node: GNU Free Documentation License446275
|
||||
Node: Indexes471452
|
||||
Node: Builtin Index471906
|
||||
Node: Reserved Word Index478733
|
||||
Node: Variable Index481181
|
||||
Node: Function Index496932
|
||||
Node: Concept Index510235
|
||||
|
||||
End Tag Table
|
||||
|
||||
Binary file not shown.
+154
-153
@@ -1,6 +1,6 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.22.3
|
||||
%%CreationDate: Mon Nov 19 15:20:58 2018
|
||||
%%CreationDate: Tue Dec 18 11:43:40 2018
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%+ font Times-Italic
|
||||
@@ -340,7 +340,7 @@ F .475(xtended deb)-.15 F(ug-)-.2 E
|
||||
(~/.bashr)3.598 E(c)-.37 E F0 1.598(if the)4.408 F(shell is interacti)
|
||||
144 710.4 Q .3 -.15(ve \()-.25 H(see).15 E F4(INV)2.5 E(OCA)-.405 E
|
||||
(TION)-.855 E F0(belo)2.25 E(w\).)-.25 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(1)195.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(1)193.455 E 0 Cg EP
|
||||
%%Page: 2 2
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -462,8 +462,8 @@ F2(~/.bashr)108 691.2 Q(c)-.37 E F0 2.535(,i)C 2.535(ft)-2.535 G .035
|
||||
Q F1(bash)5.306 E F0 2.806(is started non-interacti)5.306 F -.15(ve)-.25
|
||||
G(ly).15 E 5.306(,t)-.65 G 5.306(or)-5.306 G 2.806
|
||||
(un a shell script, for e)-5.306 F 2.805(xample, it looks for the v)-.15
|
||||
F(ariable)-.25 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(2)
|
||||
195.395 E 0 Cg EP
|
||||
F(ariable)-.25 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(2)
|
||||
193.455 E 0 Cg EP
|
||||
%%Page: 3 3
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -598,7 +598,7 @@ F .389(wed by)-.25 F F2(blank)2.889 E F0 .389(-separated w)B .389
|
||||
-.15(xe)-.15 G(cuted,).15 E(and is passed as ar)108 722.4 Q
|
||||
(gument zero.)-.18 E(The remaining w)5 E(ords are passed as ar)-.1 E
|
||||
(guments to the in)-.18 E -.2(vo)-.4 G -.1(ke).2 G 2.5(dc).1 G(ommand.)
|
||||
-2.5 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(3)195.395 E 0 Cg
|
||||
-2.5 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(3)193.455 E 0 Cg
|
||||
EP
|
||||
%%Page: 4 4
|
||||
%%BeginPageSetup
|
||||
@@ -693,18 +693,20 @@ F .961(wed by)-.25 F F2(;)3.461 E F0(and)3.461 E F2(&)3.461 E F0 3.461
|
||||
(If a command is terminated by the control operator)108 544.8 R F2(&)
|
||||
2.529 E F0 2.529(,t)C .029(he shell e)-2.529 F -.15(xe)-.15 G .029
|
||||
(cutes the command in the).15 F F1(bac)2.528 E(kgr)-.2 E(ound)-.45 E F0
|
||||
(in)2.528 E 2.875(as)108 556.8 S 2.875(ubshell. The)-2.875 F .375
|
||||
(shell does not w)2.875 F .375
|
||||
(ait for the command to \214nish, and the return status is 0.)-.1 F .376
|
||||
(Commands sepa-)5.376 F .849(rated by a)108 568.8 R F2(;)3.349 E F0 .849
|
||||
(are e)3.349 F -.15(xe)-.15 G .848(cuted sequentially; the shell w).15 F
|
||||
.848(aits for each command to terminate in turn.)-.1 F .848(The return)
|
||||
5.848 F(status is the e)108 580.8 Q(xit status of the last command e)
|
||||
-.15 E -.15(xe)-.15 G(cuted.).15 E .937(AND and OR lists are sequences \
|
||||
of one or more pipelines separated by the)108 597.6 R F2(&&)3.437 E F0
|
||||
(and)3.437 E F2(||)3.437 E F0 .937(control operators,)3.437 F(respecti)
|
||||
108 609.6 Q -.15(ve)-.25 G(ly).15 E 5(.A)-.65 G(ND and OR lists are e)-5
|
||||
E -.15(xe)-.15 G(cuted with left associati).15 E(vity)-.25 E 5(.A)-.65 G
|
||||
(in)2.528 E 2.678(as)108 556.8 S 2.678(ubshell. The)-2.678 F .178
|
||||
(shell does not w)2.678 F .178
|
||||
(ait for the command to \214nish, and the return status is 0.)-.1 F .178
|
||||
(These are referred)5.178 F .779(to as)108 568.8 R F1(async)3.279 E(hr)
|
||||
-.15 E(onous)-.45 E F0 3.279(commands. Commands)3.279 F .779
|
||||
(separated by a)3.279 F F2(;)3.279 E F0 .779(are e)3.279 F -.15(xe)-.15
|
||||
G .778(cuted sequentially; the shell w).15 F .778(aits for)-.1 F
|
||||
(each command to terminate in turn.)108 580.8 Q
|
||||
(The return status is the e)5 E(xit status of the last command e)-.15 E
|
||||
-.15(xe)-.15 G(cuted.).15 E .937(AND and OR lists are sequences of one \
|
||||
or more pipelines separated by the)108 597.6 R F2(&&)3.437 E F0(and)
|
||||
3.437 E F2(||)3.437 E F0 .937(control operators,)3.437 F(respecti)108
|
||||
609.6 Q -.15(ve)-.25 G(ly).15 E 5(.A)-.65 G(ND and OR lists are e)-5 E
|
||||
-.15(xe)-.15 G(cuted with left associati).15 E(vity)-.25 E 5(.A)-.65 G
|
||||
2.5(nA)-5 G(ND list has the form)-2.5 E F1(command1)144 626.4 Q F2(&&)
|
||||
2.5 E F1(command2)2.5 E(command2)108.2 643.2 Q F0(is e)2.52 E -.15(xe)
|
||||
-.15 G(cuted if, and only if,).15 E F1(command1)2.7 E F0(returns an e)
|
||||
@@ -715,8 +717,8 @@ E -.15(xe)-.15 G(cuted with left associati).15 E(vity)-.25 E 5(.A)-.65 G
|
||||
(returns a non-zero e)2.935 F .435(xit status.)-.15 F .434
|
||||
(The return status of AND)5.434 F(and OR lists is the e)108 705.6 Q
|
||||
(xit status of the last command e)-.15 E -.15(xe)-.15 G
|
||||
(cuted in the list.).15 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235
|
||||
E(4)195.395 E 0 Cg EP
|
||||
(cuted in the list.).15 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295
|
||||
E(4)193.455 E 0 Cg EP
|
||||
%%Page: 5 5
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -845,8 +847,8 @@ F0 .597(with inde)2.847 F 3.097(x0i)-.15 G(s)-3.097 E .049
|
||||
2.5 E F0 .523(Returns the v)180 685.2 R .522(alue of)-.25 F F2 -.2(ex)
|
||||
3.022 G(pr).2 E(ession)-.37 E F0 5.522(.T)C .522(his may be used to o)
|
||||
-5.522 F -.15(ve)-.15 G .522(rride the normal precedence of).15 F
|
||||
(operators.)180 697.2 Q(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E
|
||||
(5)195.395 E 0 Cg EP
|
||||
(operators.)180 697.2 Q(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E
|
||||
(5)193.455 E 0 Cg EP
|
||||
%%Page: 6 6
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -994,7 +996,7 @@ F .478(xit status is zero, the)-.15 F F1(then)2.978 E F2(list)2.978 E F0
|
||||
-.15 F .103(xit sta-)-.15 F(tus of the last command e)144 688.8 Q -.15
|
||||
(xe)-.15 G(cuted, or zero if no condition tested true.).15 E F1(while)
|
||||
108 705.6 Q F2(list-1)2.5 E F0(;)A F1(do)2.5 E F2(list-2)2.5 E F0(;)A F1
|
||||
(done)2.5 E F0(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(6)195.395
|
||||
(done)2.5 E F0(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(6)193.455
|
||||
E 0 Cg EP
|
||||
%%Page: 7 7
|
||||
%%BeginPageSetup
|
||||
@@ -1129,7 +1131,7 @@ F .952(ord be)-.1 F .952(ginning with)-.15 F F1(#)3.451 E F0 .951
|
||||
(omments. The)-3.837 F F1(interacti)3.836 E -.1(ve)-.1 G(_comments).1 E
|
||||
F0 1.336(option is on by def)3.836 F 1.336(ault in)-.1 F(interacti)108
|
||||
698.4 Q .3 -.15(ve s)-.25 H(hells.).15 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(7)195.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(7)193.455 E 0 Cg EP
|
||||
%%Page: 8 8
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1234,7 +1236,7 @@ ngle-quoted, as if the dollar sign had not been present.)-.15 E 2.64(Ad)
|
||||
108 720 S .14(ouble-quoted string preceded by a dollar sign \()-2.64 F
|
||||
F4($)A F0(")A F2(string)A F0 .14
|
||||
("\) will cause the string to be translated according)B(GNU Bash 5.0)72
|
||||
768 Q(2018 October 22)141.235 E(8)195.395 E 0 Cg EP
|
||||
768 Q(2018 December 7)139.295 E(8)193.455 E 0 Cg EP
|
||||
%%Page: 9 9
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1385,7 +1387,7 @@ F0 5.144(.I)C 2.644(ft)-5.144 G .144(he control v)-2.644 F .144
|
||||
(ke).2 G .444(d, and may be reassigned using).1 F(the)108 722.4 Q F1
|
||||
(set)3.333 E F0 -.2(bu)3.333 G .833(iltin command.).2 F .834(Positional\
|
||||
parameters may not be assigned to with assignment statements.)5.833 F
|
||||
(The)5.834 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(9)195.395 E
|
||||
(The)5.834 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(9)193.455 E
|
||||
0 Cg EP
|
||||
%%Page: 10 10
|
||||
%%BeginPageSetup
|
||||
@@ -1519,7 +1521,7 @@ F F1 -.27(BA)3.048 G(SHPID).27 E F0(ha)144 727.2 Q .3 -.15(ve n)-.2 H
|
||||
2.5(oe).15 G -.25(ff)-2.5 G 2.5(ect. If).25 F F2 -.3(BA)2.5 G(SHPID).3 E
|
||||
F0(is unset, it loses its special properties, e)2.5 E -.15(ve)-.25 G 2.5
|
||||
(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)
|
||||
-2.5 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(10)190.395 E 0 Cg
|
||||
-2.5 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(10)188.455 E 0 Cg
|
||||
EP
|
||||
%%Page: 11 11
|
||||
%%BeginPageSetup
|
||||
@@ -1638,8 +1640,8 @@ shell function)-.25 F .781(names in the)144 708 R F2(FUNCN)3.28 E(AME)
|
||||
(The shell function)5.78 F F1(${FUNCN)3.28 E(AME[)-.2 E F4($i)A F1(]})A
|
||||
F0(is)3.28 E(de\214ned in the \214le)144 720 Q F1(${B)2.5 E(ASH_SOURCE[)
|
||||
-.3 E F4($i)A F1(]})A F0(and called from)2.5 E F1(${B)2.5 E(ASH_SOURCE[)
|
||||
-.3 E F4($i+1)A F1(]})A F0(.)A(GNU Bash 5.0)72 768 Q(2018 October 22)
|
||||
141.235 E(11)190.395 E 0 Cg EP
|
||||
-.3 E F4($i+1)A F1(]})A F0(.)A(GNU Bash 5.0)72 768 Q(2018 December 7)
|
||||
139.295 E(11)188.455 E 0 Cg EP
|
||||
%%Page: 12 12
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1755,8 +1757,8 @@ F0 -.2(bu)2.746 G .246(iltins must be used to add and remo).2 F .546
|
||||
F(ariable)-.25 E .35(will not change the current directory)144 726 R
|
||||
5.35(.I)-.65 G(f)-5.35 E F3(DIRST)2.85 E -.495(AC)-.81 G(K).495 E F0 .35
|
||||
(is unset, it loses its special properties, e)2.6 F -.15(ve)-.25 G 2.851
|
||||
(ni).15 G(f)-2.851 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(12)
|
||||
190.395 E 0 Cg EP
|
||||
(ni).15 G(f)-2.851 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(12)
|
||||
188.455 E 0 Cg EP
|
||||
%%Page: 13 13
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1862,7 +1864,7 @@ F1(getopts)4.127 E F0 -.2(bu)4.127 G 1.627(iltin command \(see).2 F F3
|
||||
1.652(gument to be processed by the)-.18 F F1(getopts)4.151 E F0 -.2(bu)
|
||||
4.151 G 1.651(iltin command \(see).2 F F3(SHELL)4.151 E -.09(BU)144 726
|
||||
S(IL).09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25 E(GNU Bash 5.0)
|
||||
72 768 Q(2018 October 22)141.235 E(13)190.395 E 0 Cg EP
|
||||
72 768 Q(2018 December 7)139.295 E(13)188.455 E 0 Cg EP
|
||||
%%Page: 14 14
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1980,7 +1982,7 @@ F(,)-.4 E F1(bash)2.98 E F0 .48(will write the trace output gener)2.98 F
|
||||
(-)-.2 E 3.114(ated when)144 729.6 R F4 3.114(set -x)5.614 F F0 3.114
|
||||
(is enabled to that \214le descriptor)5.614 F 8.114(.T)-.55 G 3.114
|
||||
(he \214le descriptor is closed when)-8.114 F(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(14)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(14)188.455 E 0 Cg EP
|
||||
%%Page: 15 15
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2099,7 +2101,7 @@ F -.15(ve)-.2 G 2.653(do).15 G 2.653(nt)-2.653 G .153(he history list.)
|
||||
(he history list, subject to the v)-2.942 F .442(alue of)-.25 F F1
|
||||
(HISTIGNORE)144 720 Q F4(.)A F0 1.981(The second and subsequent lines o\
|
||||
f a multi-line compound command are not)6.482 F(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(15)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(15)188.455 E 0 Cg EP
|
||||
%%Page: 16 16
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2218,8 +2220,8 @@ E F3(INSIDE_EMA)108 684 Q(CS)-.55 E F0 .886(If this v)144 696 R .886
|
||||
-.4 F F3(bash)3.386 E F0 .887(assumes that it is running)3.386 F
|
||||
(inside an Emacs shell b)144 708 Q(uf)-.2 E
|
||||
(fer and may disable line editing, depending on the v)-.25 E(alue of)
|
||||
-.25 E F3(TERM)2.5 E F0(.)A(GNU Bash 5.0)72 768 Q(2018 October 22)
|
||||
141.235 E(16)190.395 E 0 Cg EP
|
||||
-.25 E F3(TERM)2.5 E F0(.)A(GNU Bash 5.0)72 768 Q(2018 December 7)
|
||||
139.295 E(16)188.455 E 0 Cg EP
|
||||
%%Page: 17 17
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2326,7 +2328,7 @@ E F0 .471(starts, the shell enters)2.971 F/F5 10/Times-Italic@0 SF .471
|
||||
(nents to retain when e)144 720 R .923(xpanding the)-.15 F F1(\\w)3.423
|
||||
E F0(and)3.423 E F1(\\W)3.423 E F0 .923(prompt string escapes \(see)
|
||||
3.423 F F2(PR)3.423 E(OMPTING)-.27 E F0(belo)3.173 E(w\).)-.25 E
|
||||
(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(17)190.395 E 0 Cg EP
|
||||
(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(17)188.455 E 0 Cg EP
|
||||
%%Page: 18 18
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2446,7 +2448,7 @@ E F0(belo)3.084 E 3.334(w\). If)-.25 F .834(set to an)3.334 F 3.334(yo)
|
||||
(must be a pre\214x of a stopped job')144 728.4 R 2.816(sn)-.55 G .316
|
||||
(ame; this pro)-2.816 F .315(vides functionality analogous to the)-.15 F
|
||||
F1(%)2.815 E F3(string)A F0(job)2.815 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(18)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(18)188.455 E 0 Cg EP
|
||||
%%Page: 19 19
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2593,7 +2595,7 @@ R 5.294(.I)-.65 G 2.794(ft)-5.294 G(he)-2.794 E F3(subscript)3.135 E F0
|
||||
108 715.2 R 2.5(yr)-.15 G(eference to a v)-2.5 E(ariable using a v)-.25
|
||||
E(alid subscript is le)-.25 E -.05(ga)-.15 G(l, and).05 E F1(bash)2.5 E
|
||||
F0(will create an array if necessary)2.5 E(.)-.65 E(GNU Bash 5.0)72 768
|
||||
Q(2018 October 22)141.235 E(19)190.395 E 0 Cg EP
|
||||
Q(2018 December 7)139.295 E(19)188.455 E 0 Cg EP
|
||||
%%Page: 20 20
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2740,7 +2742,7 @@ F2(y)3.564 E F0 3.564(,i)C(nclusi)-3.564 E -.15(ve)-.25 G 3.564(,u).15 G
|
||||
(It is strictly te)6.209 F(xtual.)-.15 E F1(Bash)6.209 E F0 1.209
|
||||
(does not apply an)3.709 F 3.709(ys)-.15 G 1.209
|
||||
(yntactic interpretation to the)-3.709 F(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(20)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(20)188.455 E 0 Cg EP
|
||||
%%Page: 21 21
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2866,7 +2868,7 @@ Q 1.189
|
||||
5.177 E(ameter)-.15 E F0 2.677(is a shell parameter as described abo)
|
||||
5.177 F -.15(ve)-.15 G F1 -.74(PA)144 729.6 S(RAMETERS).74 E F0 2.5(\)o)
|
||||
C 2.5(ra)-2.5 G 2.5(na)-2.5 G(rray reference \()-2.5 E F1(Arrays)A F0
|
||||
(\).)A(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(21)190.395 E 0 Cg
|
||||
(\).)A(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(21)188.455 E 0 Cg
|
||||
EP
|
||||
%%Page: 22 22
|
||||
%%BeginPageSetup
|
||||
@@ -2999,7 +3001,7 @@ E F0 .459(positional parameters be)2.959 F .458(ginning at)-.15 F F1(of)
|
||||
(luates to a).25 F(number less than zero.)144 686.4 Q(Substring e)144
|
||||
710.4 Q(xpansion applied to an associati)-.15 E .3 -.15(ve a)-.25 H
|
||||
(rray produces unde\214ned results.).15 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(22)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(22)188.455 E 0 Cg EP
|
||||
%%Page: 23 23
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3142,7 +3144,7 @@ E F0 .958(are deleted and the)3.457 F F2(/)3.458 E F0(follo)3.458 E
|
||||
144 724.8 R(If)5.883 E F1(par)4.633 E(ameter)-.15 E F0(is)4.113 E F2(@)
|
||||
3.383 E F0(or)3.383 E F2(*)3.383 E F0 3.383(,t)C .884
|
||||
(he substitution operation is applied to each positional)-3.383 F
|
||||
(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(23)190.395 E 0 Cg EP
|
||||
(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(23)188.455 E 0 Cg EP
|
||||
%%Page: 24 24
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3256,7 +3258,7 @@ sub-)-5.315 F 3.886(stitution. When)108 717.6 R 1.386(using the $\()
|
||||
(orm, all characters between the parentheses mak)-3.886 F 3.887(eu)-.1 G
|
||||
3.887(pt)-3.887 G 1.387(he com-)-3.887 F
|
||||
(mand; none are treated specially)108 729.6 Q(.)-.65 E(GNU Bash 5.0)72
|
||||
768 Q(2018 October 22)141.235 E(24)190.395 E 0 Cg EP
|
||||
768 Q(2018 December 7)139.295 E(24)188.455 E 0 Cg EP
|
||||
%%Page: 25 25
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3390,8 +3392,8 @@ F3 -.09(Pa)3.062 G(tter).09 E 2.812(nM)-.135 G(atching)-2.812 E F0(belo)
|
||||
(nocaseglob)3.88 E F0(is)3.88 E .103
|
||||
(enabled, the match is performed without re)108 729.6 R -.05(ga)-.15 G
|
||||
.104(rd to the case of alphabetic characters.).05 F .104
|
||||
(When a pattern is used)5.104 F(GNU Bash 5.0)72 768 Q(2018 October 22)
|
||||
141.235 E(25)190.395 E 0 Cg EP
|
||||
(When a pattern is used)5.104 F(GNU Bash 5.0)72 768 Q(2018 December 7)
|
||||
139.295 E(25)188.455 E 0 Cg EP
|
||||
%%Page: 26 26
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3529,7 +3531,7 @@ E F4(symbol)A F1(.])A F0(matches the collating symbol)2.5 E F4(symbol)
|
||||
(is a list of one or more patterns separated by a)2.755 F F1(|)2.756 E
|
||||
F0(.)A(Composite patterns may be formed using one or more of the follo)
|
||||
108 718.8 Q(wing sub-patterns:)-.25 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(26)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(26)188.455 E 0 Cg EP
|
||||
%%Page: 27 27
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3627,8 +3629,8 @@ F -.15(ve)-.25 G .598(ral \214lenames specially when the).15 F 3.099(ya)
|
||||
(vior described belo)-.2 E -.65(w.)-.25 G F1(/de)144 686.4 Q(v/fd/)-.15
|
||||
E F2(fd)A F0(If)180 698.4 Q F2(fd)2.5 E F0(is a v)2.5 E(alid inte)-.25 E
|
||||
(ger)-.15 E 2.5<2c8c>-.4 G(le descriptor)-2.5 E F2(fd)2.5 E F0
|
||||
(is duplicated.)2.5 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E
|
||||
(27)190.395 E 0 Cg EP
|
||||
(is duplicated.)2.5 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E
|
||||
(27)188.455 E 0 Cg EP
|
||||
%%Page: 28 28
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3718,7 +3720,7 @@ E F1(>&)A F0(1)A .114(When using the second form,)108 710.4 R F2(wor)
|
||||
.115(oes, other redirection operators)-2.615 F(apply \(see)108 722.4 Q
|
||||
F1(Duplicating File Descriptors)2.5 E F0(belo)2.5 E
|
||||
(w\) for compatibility reasons.)-.25 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(28)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(28)188.455 E 0 Cg EP
|
||||
%%Page: 29 29
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3810,7 +3812,7 @@ F0 2.754<2c8c>C .254(le descriptor)-2.754 F F2(n)3.114 E F0 .254
|
||||
3.465 E F0 3.466(,t)C .966
|
||||
(he standard output and standard error are redirected as described)
|
||||
-3.466 F(pre)108 691.2 Q(viously)-.25 E(.)-.65 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(29)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(29)188.455 E 0 Cg EP
|
||||
%%Page: 30 30
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3932,8 +3934,8 @@ F .639(function is e)108 708 R -.15(xe)-.15 G .639(cuted, the ar).15 F
|
||||
-.18 F -.15(xe)-.15 G(cution.).15 E 1.659(The special parameter)108 720
|
||||
R F1(#)4.159 E F0 1.659(is updated to re\215ect the change.)4.159 F
|
||||
1.659(Special parameter)6.659 F F1(0)4.159 E F0 1.658(is unchanged.)
|
||||
4.158 F 1.658(The \214rst)6.658 F(GNU Bash 5.0)72 768 Q(2018 October 22)
|
||||
141.235 E(30)190.395 E 0 Cg EP
|
||||
4.158 F 1.658(The \214rst)6.658 F(GNU Bash 5.0)72 768 Q(2018 December 7)
|
||||
139.295 E(30)188.455 E 0 Cg EP
|
||||
%%Page: 31 31
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4074,7 +4076,7 @@ G(r\215o).15 E 2.357 -.65(w, t)-.25 H 1.057(hough di).65 F 1.057
|
||||
(ve)-.25 G .439(ls of equal-precedence operators.).15 F .44(The le)5.44
|
||||
F -.15(ve)-.25 G .44(ls are listed in order).15 F
|
||||
(of decreasing precedence.)108 708 Q(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(31)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(31)188.455 E 0 Cg EP
|
||||
%%Page: 32 32
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4174,7 +4176,7 @@ F1(\214le)3.653 E F0(ar)108 672 Q .426
|
||||
(Unless otherwise speci\214ed, primaries that operate on \214les follo)
|
||||
108 712.8 R 3.221(ws)-.25 G .721(ymbolic links and operate on the tar)
|
||||
-3.221 F(get)-.18 E(of the link, rather than the link itself.)108 724.8
|
||||
Q(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(32)190.395 E 0 Cg EP
|
||||
Q(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(32)188.455 E 0 Cg EP
|
||||
%%Page: 33 33
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4266,7 +4268,7 @@ E F0(is set \(has been assigned a v)2.68 E(alue\).)-.25 E F1<ad52>108
|
||||
(ue if the strings are not equal.).35 E F2(string1)108 686.4 Q F1(<)2.5
|
||||
E F2(string2)2.5 E F0 -.35(Tr)144 698.4 S(ue if).35 E F2(string1)2.5 E
|
||||
F0(sorts before)2.5 E F2(string2)2.5 E F0(le)2.5 E(xicographically)-.15
|
||||
E(.)-.65 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(33)190.395 E
|
||||
E(.)-.65 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(33)188.455 E
|
||||
0 Cg EP
|
||||
%%Page: 34 34
|
||||
%%BeginPageSetup
|
||||
@@ -4388,8 +4390,8 @@ ful, or if the command name contains one or more slashes, the shell e)
|
||||
-.15(xe)-.15 G 1.809(cution f).15 F 1.809
|
||||
(ails because the \214le is not in e)-.1 F -.15(xe)-.15 G 1.809
|
||||
(cutable format, and the \214le is not a directory).15 F 4.309(,i)-.65 G
|
||||
4.309(ti)-4.309 G(s)-4.309 E(GNU Bash 5.0)72 768 Q(2018 October 22)
|
||||
141.235 E(34)190.395 E 0 Cg EP
|
||||
4.309(ti)-4.309 G(s)-4.309 E(GNU Bash 5.0)72 768 Q(2018 December 7)
|
||||
139.295 E(34)188.455 E 0 Cg EP
|
||||
%%Page: 35 35
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4494,7 +4496,7 @@ F2<ad65>3.876 E F0 1.376(option from the parent)3.876 F 2.5(shell. When)
|
||||
(.O)C .198(therwise, the in)-5.198 F -.2(vo)-.4 G -.1(ke).2 G 2.698(dc)
|
||||
.1 G .197(ommand inherits the \214le descriptors of the calling shell)
|
||||
-2.698 F(as modi\214ed by redirections.)108 717.6 Q(GNU Bash 5.0)72 768
|
||||
Q(2018 October 22)141.235 E(35)190.395 E 0 Cg EP
|
||||
Q(2018 December 7)139.295 E(35)188.455 E 0 Cg EP
|
||||
%%Page: 36 36
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4630,8 +4632,8 @@ G .93(rom the)-3.43 F 1.357(jobs table with the)108 686.4 R F3(diso)
|
||||
(shell option has been set with)2.666 F F3(shopt)2.666 E F0(,)A F3(bash)
|
||||
2.666 E F0 .166(sends a)2.666 F F4(SIGHUP)2.666 E F0 .166
|
||||
(to all jobs when an interacti)2.416 F -.15(ve)-.25 G(login shell e)108
|
||||
727.2 Q(xits.)-.15 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(36)
|
||||
190.395 E 0 Cg EP
|
||||
727.2 Q(xits.)-.15 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(36)
|
||||
188.455 E 0 Cg EP
|
||||
%%Page: 37 37
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4773,7 +4775,7 @@ R -.15(ve)-.25 G 2.631(raj).15 G .131(ob changes state.)-2.631 F
|
||||
(reports such changes immediately)2.648 F 5.147(.A)-.65 G .447 -.15
|
||||
(ny t)-5.147 H .147(rap on).15 F F4(SIGCHLD)2.647 E F0 .147(is e)2.397 F
|
||||
-.15(xe)-.15 G(-).15 E(cuted for each child that e)108 715.2 Q(xits.)
|
||||
-.15 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(37)190.395 E 0 Cg
|
||||
-.15 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(37)188.455 E 0 Cg
|
||||
EP
|
||||
%%Page: 38 38
|
||||
%%BeginPageSetup
|
||||
@@ -4875,7 +4877,7 @@ story \214le \(see)108 650.4 R F3(HIST)4.085 E(OR)-.162 E(Y)-.315 E F0
|
||||
(pr)2.852 E(omptv)-.18 E(ars)-.1 E F0 .351(shell option \(see the)2.852
|
||||
F(description of the)108 698.4 Q F1(shopt)2.5 E F0(command under)2.5 E
|
||||
F3(SHELL B)2.5 E(UIL)-.09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)
|
||||
-.25 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(38)190.395 E 0 Cg
|
||||
-.25 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(38)188.455 E 0 Cg
|
||||
EP
|
||||
%%Page: 39 39
|
||||
%%BeginPageSetup
|
||||
@@ -5002,7 +5004,7 @@ E F4(macr)2.66 E(o)-.45 E F0(,)A F4 -.1(ke)2.66 G(yname)-.2 E F0 .161
|
||||
144 700.8 Q -.15(ve)-.25 G(rsal\255ar).15 E(gument)-.18 E
|
||||
(Meta-Rubout: backw)144 712.8 Q(ard-kill-w)-.1 E(ord)-.1 E
|
||||
(Control-o: "> output")144 724.8 Q(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(39)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(39)188.455 E 0 Cg EP
|
||||
%%Page: 40 40
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5097,7 +5099,7 @@ E F0 2.51(,r)C .01(eadline ne)-2.51 F -.15(ve)-.25 G(r).15 E .94
|
||||
3.44(,r)C .94(eadline uses a visible bell if one is a)-3.44 F -.25(va)
|
||||
-.2 G 3.44(ilable. If).25 F .94(set to)3.44 F F2(audible)3.44 E F0(,)A
|
||||
(readline attempts to ring the terminal')144 708 Q 2.5(sb)-.55 G(ell.)
|
||||
-2.5 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(40)190.395 E 0 Cg
|
||||
-2.5 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(40)188.455 E 0 Cg
|
||||
EP
|
||||
%%Page: 41 41
|
||||
%%BeginPageSetup
|
||||
@@ -5203,7 +5205,7 @@ R -.15(ve)-.25 G 5.622(.T).15 G .622(he v)-5.622 F .622(alue is e)-.25 F
|
||||
(ailable. Use)-.05 F .298(the \\1 and \\2 escapes to be)2.798 F .298
|
||||
(gin and end sequences of non-printing characters, which)-.15 F
|
||||
(can be used to embed a terminal control sequence into the mode string.)
|
||||
144 720 Q(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(41)190.395 E 0
|
||||
144 720 Q(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(41)188.455 E 0
|
||||
Cg EP
|
||||
%%Page: 42 42
|
||||
%%BeginPageSetup
|
||||
@@ -5314,7 +5316,7 @@ E F2 -.37(re)2.551 G(adline).37 E F0 .051(will w)2.551 F .051
|
||||
.15 E F1(mark\255modi\214ed\255lines \(Off\))108 684 Q F0(If set to)144
|
||||
696 Q F1(On)2.5 E F0 2.5(,h)C(istory lines that ha)-2.5 E .3 -.15(ve b)
|
||||
-.2 H(een modi\214ed are displayed with a preceding asterisk \().15 E F1
|
||||
(*)A F0(\).)A(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(42)190.395
|
||||
(*)A F0(\).)A(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(42)188.455
|
||||
E 0 Cg EP
|
||||
%%Page: 43 43
|
||||
%%BeginPageSetup
|
||||
@@ -5420,7 +5422,7 @@ F .186(last line of the primary prompt when vi editing mode is acti)144
|
||||
-.2 G 2.815(ilable. Use).25 F .314(the \\1 and \\2 escapes to be)2.815 F
|
||||
.314(gin and end sequences of non-print-)-.15 F(ing characters, which c\
|
||||
an be used to embed a terminal control sequence into the mode string.)
|
||||
144 708 Q(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(43)190.395 E 0
|
||||
144 708 Q(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(43)188.455 E 0
|
||||
Cg EP
|
||||
%%Page: 44 44
|
||||
%%BeginPageSetup
|
||||
@@ -5521,7 +5523,7 @@ Q F0 .356(This directi)144 684 R .656 -.15(ve t)-.25 H(ak).15 E .356
|
||||
144 696 R(or e)-.15 E(xample, the follo)-.15 E(wing directi)-.25 E .3
|
||||
-.15(ve w)-.25 H(ould read).05 E F2(/etc/inputr)2.5 E(c)-.37 E F0(:)A F1
|
||||
($include)144 720 Q F2(/etc/inputr)5.833 E(c)-.37 E F0(GNU Bash 5.0)72
|
||||
768 Q(2018 October 22)141.235 E(44)190.395 E 0 Cg EP
|
||||
768 Q(2018 December 7)139.295 E(44)188.455 E 0 Cg EP
|
||||
%%Page: 45 45
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5625,7 +5627,7 @@ idth.)-.05 E F1(next\255scr)108 700.8 Q(een\255line)-.18 E F0 .638
|
||||
144 724.8 R .309 -.15(ve t)-.2 H .009(he desired ef).15 F .009
|
||||
(fect if the current Readline line does not tak)-.25 F 2.509(eu)-.1 G
|
||||
2.509(pm)-2.509 G .009(ore than one ph)-2.509 F(ysical)-.05 E
|
||||
(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(45)190.395 E 0 Cg EP
|
||||
(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(45)188.455 E 0 Cg EP
|
||||
%%Page: 46 46
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5711,7 +5713,7 @@ F .622(ord on the pre)-.1 F .622(vious line\))-.25 F .794(at point.)144
|
||||
(is computed, the ar)2.781 F .281(gument is e)-.18 F .282
|
||||
(xtracted as if the "!)-.15 F F3(n)A F0(")A(history e)144 700.8 Q
|
||||
(xpansion had been speci\214ed.)-.15 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(46)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(46)188.455 E 0 Cg EP
|
||||
%%Page: 47 47
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5811,7 +5813,7 @@ G .779(nsert characters lik)-3.279 F(e)-.1 E F1(C\255q)3.278 E F0 3.278
|
||||
(Insert a tab character)144 676.8 Q(.)-.55 E F1
|
||||
(self\255insert \(a, b, A, 1, !, ...\))108 688.8 Q F0
|
||||
(Insert the character typed.)144 700.8 Q(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(47)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(47)188.455 E 0 Cg EP
|
||||
%%Page: 48 48
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5905,8 +5907,8 @@ F 5.365(.T)-.65 G .365(he killed te)-5.365 F .365(xt is sa)-.15 F -.15
|
||||
-2.5 E F1(delete\255horizontal\255space \(M\255\\\))108 676.8 Q F0
|
||||
(Delete all spaces and tabs around point.)144 688.8 Q F1(kill\255r)108
|
||||
700.8 Q(egion)-.18 E F0(Kill the te)144 712.8 Q(xt in the current re)
|
||||
-.15 E(gion.)-.15 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(48)
|
||||
190.395 E 0 Cg EP
|
||||
-.15 E(gion.)-.15 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(48)
|
||||
188.455 E 0 Cg EP
|
||||
%%Page: 49 49
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6008,7 +6010,7 @@ F1(delete\255char\255or\255list)108 633.6 Q F0 .234
|
||||
-.15 E F1(possible\255\214lename\255completions \(C\255x /\))108 705.6 Q
|
||||
F0(List the possible completions of the te)144 717.6 Q
|
||||
(xt before point, treating it as a \214lename.)-.15 E(GNU Bash 5.0)72
|
||||
768 Q(2018 October 22)141.235 E(49)190.395 E 0 Cg EP
|
||||
768 Q(2018 December 7)139.295 E(49)188.455 E 0 Cg EP
|
||||
%%Page: 50 50
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6098,7 +6100,7 @@ SF(ESC)5 E F1(f)2.25 E F0(is equi)2.5 E -.25(va)-.25 G(lent to).25 E F1
|
||||
F 3.595(ee)-.1 G -.15(xe)-3.745 G 1.095(cuting the).15 F F1(undo)3.595 E
|
||||
F0 1.095(command enough times to)3.595 F
|
||||
(return the line to its initial state.)144 729.6 Q(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(50)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(50)188.455 E 0 Cg EP
|
||||
%%Page: 51 51
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6205,7 +6207,7 @@ F2(compspec)108 724.8 Q F0 3.829(\)h)C 1.329
|
||||
(as been de\214ned using the)-3.829 F F1(complete)3.829 E F0 -.2(bu)
|
||||
3.829 G 1.329(iltin \(see).2 F/F3 9/Times-Bold@0 SF 1.329(SHELL B)3.829
|
||||
F(UIL)-.09 E 1.329(TIN COMMANDS)-.828 F F0(belo)3.579 E 1.328(w\), the)
|
||||
-.25 F(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(51)190.395 E 0 Cg
|
||||
-.25 F(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(51)188.455 E 0 Cg
|
||||
EP
|
||||
%%Page: 52 52
|
||||
%%BeginPageSetup
|
||||
@@ -6349,7 +6351,7 @@ ode as the list of possible completions.)108 684 Q .246(If the pre)108
|
||||
(If the)108 729.6 R F1 2.03(\255o plusdirs)4.53 F F0 2.03(option w)4.53
|
||||
F 2.029(as supplied to)-.1 F F1(complete)4.529 E F0 2.029
|
||||
(when the compspec w)4.529 F 2.029(as de\214ned, directory name)-.1 F
|
||||
(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(52)190.395 E 0 Cg EP
|
||||
(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(52)188.455 E 0 Cg EP
|
||||
%%Page: 53 53
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6481,8 +6483,8 @@ F0 3.257(lines. If)3.007 F F5(HISTFILESIZE)3.257 E F0 .757
|
||||
(iltin may be used to display or modify the history list and).2 F 1.603
|
||||
(manipulate the history \214le.)108 722.4 R 1.604
|
||||
(When using command-line editing, search commands are a)6.604 F -.25(va)
|
||||
-.2 G 1.604(ilable in each).25 F(GNU Bash 5.0)72 768 Q(2018 October 22)
|
||||
141.235 E(53)190.395 E 0 Cg EP
|
||||
-.2 G 1.604(ilable in each).25 F(GNU Bash 5.0)72 768 Q(2018 December 7)
|
||||
139.295 E(53)188.455 E 0 Cg EP
|
||||
%%Page: 54 54
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6614,7 +6616,7 @@ Q F0 1.607(Start a history substitution, e)144 655.2 R 1.607
|
||||
(This is a synon)5 E(ym for `!\2551'.)-.15 E F2(!)108 715.2 Q F4(string)
|
||||
A F0 .865(Refer to the most recent command preceding the current positi\
|
||||
on in the history list starting with)144 715.2 R F4(string)144 727.2 Q
|
||||
F0(.).22 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(54)190.395 E
|
||||
F0(.).22 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(54)188.455 E
|
||||
0 Cg EP
|
||||
%%Page: 55 55
|
||||
%%BeginPageSetup
|
||||
@@ -6735,8 +6737,8 @@ F1(let)2.961 E F0 2.961(,a)C(nd)-2.961 E F1(shift)2.961 E F0 -.2(bu)
|
||||
(guments be)-.18 F .26(ginning with)-.15 F F1<ad>2.76 E F0 .261
|
||||
(without requiring)2.76 F F1<adad>2.761 E F0 5.261(.O)C .261(ther b)
|
||||
-5.261 F .261(uiltins that accept ar)-.2 F .261(guments b)-.18 F .261
|
||||
(ut are not)-.2 F(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(55)
|
||||
190.395 E 0 Cg EP
|
||||
(ut are not)-.2 F(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(55)
|
||||
188.455 E 0 Cg EP
|
||||
%%Page: 56 56
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6871,7 +6873,7 @@ Q F0(List current)180 685.2 Q F1 -.18(re)2.5 G(adline).18 E F0
|
||||
G 1.155(equences bound to macros and the strings the)-3.655 F 3.655(yo)
|
||||
-.15 G 1.155(utput in such a)-3.655 F -.1(wa)180 709.2 S 2.5(yt).1 G
|
||||
(hat the)-2.5 E 2.5(yc)-.15 G(an be re-read.)-2.5 E(GNU Bash 5.0)72 768
|
||||
Q(2018 October 22)141.235 E(56)190.395 E 0 Cg EP
|
||||
Q(2018 December 7)139.295 E(56)188.455 E 0 Cg EP
|
||||
%%Page: 57 57
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7004,7 +7006,7 @@ F0 .468(will return an unsuccessful status.)2.968 F .468(On systems)
|
||||
144 720 R .71(gument of)-.18 F F1<ad>3.21 E F0 .71(is con)3.21 F -.15
|
||||
(ve)-.4 G .71(rted to).15 F F3($OLDPWD)3.21 E F0 .71
|
||||
(before the directory change is attempted.)2.96 F .71(If a non-)5.71 F
|
||||
(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(57)190.395 E 0 Cg EP
|
||||
(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(57)188.455 E 0 Cg EP
|
||||
%%Page: 58 58
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7131,7 +7133,7 @@ F3(comp-option)2.5 E F0(The)184 686.4 Q F3(comp-option)2.79 E F0 .291
|
||||
.15 F 2.791(sb)-.55 G(eha)-2.791 E .291(vior be)-.2 F .291
|
||||
(yond the simple)-.15 F(generation of completions.)184 698.4 Q F3
|
||||
(comp-option)5 E F0(may be one of:)2.5 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(58)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(58)188.455 E 0 Cg EP
|
||||
%%Page: 59 59
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7202,7 +7204,7 @@ E F0(option to the)2.5 E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1
|
||||
(Names of stopped jobs, if job control is acti)224 696 Q -.15(ve)-.25 G
|
||||
(.).15 E F1(user)184 708 Q F0(User names.)224 708 Q
|
||||
(May also be speci\214ed as)5 E F1<ad75>2.5 E F0(.)A(GNU Bash 5.0)72 768
|
||||
Q(2018 October 22)141.235 E(59)190.395 E 0 Cg EP
|
||||
Q(2018 December 7)139.295 E(59)188.455 E 0 Cg EP
|
||||
%%Page: 60 60
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7316,7 +7318,7 @@ F1(while)4.254 E F0(,)A F1(until)4.254 E F0 4.254(,o)C(r)-4.254 E F1
|
||||
(ve)-.25 G(l').15 E 3.014('l)-.74 G .514(oop\) is resumed.)-3.014 F .513
|
||||
(The return v)5.513 F .513(alue is 0 unless)-.25 F F2(n)3.013 E F0(is)
|
||||
3.013 E(not greater than or equal to 1.)144 698.4 Q(GNU Bash 5.0)72 768
|
||||
Q(2018 October 22)141.235 E(60)190.395 E 0 Cg EP
|
||||
Q(2018 December 7)139.295 E(60)188.455 E 0 Cg EP
|
||||
%%Page: 61 61
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7406,45 +7408,44 @@ Q F0 .909(When the v)180 456 R .909(ariable is assigned a v)-.25 F .909
|
||||
(ve)-.4 G .91(rted to upper).15 F(-)-.2 E 2.5(case. The)180 468 R(lo)2.5
|
||||
E(wer)-.25 E(-case attrib)-.2 E(ute is disabled.)-.2 E F1<ad78>144 480 Q
|
||||
F0(Mark)180 480 Q F2(name)2.5 E F0 2.5(sf)C(or e)-2.5 E
|
||||
(xport to subsequent commands via the en)-.15 E(vironment.)-.4 E .121
|
||||
(Using `+' instead of `\255' turns of)144 496.8 R 2.621(ft)-.25 G .121
|
||||
(he attrib)-2.621 F .121(ute instead, with the e)-.2 F .12
|
||||
(xceptions that)-.15 F F1(+a)2.62 E F0 .12(may not be used)2.62 F .644
|
||||
(to destro)144 508.8 R 3.144(ya)-.1 G 3.144(na)-3.144 G .644(rray v)
|
||||
-3.144 F .644(ariable and)-.25 F F1(+r)3.145 E F0 .645(will not remo)
|
||||
3.145 F .945 -.15(ve t)-.15 H .645(he readonly attrib).15 F 3.145
|
||||
(ute. When)-.2 F .645(used in a func-)3.145 F(tion,)144 520.8 Q F1
|
||||
(declar)2.835 E(e)-.18 E F0(and)2.835 E F1(typeset)2.835 E F0(mak)2.835
|
||||
E 2.835(ee)-.1 G(ach)-2.835 E F2(name)2.835 E F0 .335
|
||||
(local, as with the)2.835 F F1(local)2.835 E F0 .335
|
||||
(command, unless the)2.835 F F1<ad67>2.835 E F0(option)2.835 E 1.282
|
||||
(is supplied.)144 532.8 R 1.282(If a v)6.282 F 1.283
|
||||
(ariable name is follo)-.25 F 1.283(wed by =)-.25 F F2(value)A F0 3.783
|
||||
(,t)C 1.283(he v)-3.783 F 1.283(alue of the v)-.25 F 1.283
|
||||
(ariable is set to)-.25 F F2(value)3.783 E F0(.)A .927(When using)144
|
||||
544.8 R F1<ad61>3.427 E F0(or)3.427 E F1<ad41>3.427 E F0 .926
|
||||
(and the compound assignment syntax to create array v)3.427 F .926
|
||||
(ariables, additional)-.25 F(attrib)144 556.8 Q .592(utes do not tak)-.2
|
||||
F 3.092(ee)-.1 G -.25(ff)-3.092 G .592
|
||||
(ect until subsequent assignments.).25 F .592(The return v)5.592 F .592
|
||||
(alue is 0 unless an in)-.25 F -.25(va)-.4 G(lid).25 E .429
|
||||
(option is encountered, an attempt is made to de\214ne a function using)
|
||||
144 568.8 R/F4 10/Courier@0 SF .428(\255f foo=bar)2.929 F F0 2.928(,a)C
|
||||
2.928(na)-2.928 G .428(ttempt is)-2.928 F .062(made to assign a v)144
|
||||
580.8 R .062(alue to a readonly v)-.25 F .063
|
||||
(ariable, an attempt is made to assign a v)-.25 F .063
|
||||
(alue to an array v)-.25 F(ari-)-.25 E .102
|
||||
(able without using the compound assignment syntax \(see)144 592.8 R F1
|
||||
(Arrays)2.602 E F0(abo)2.602 E -.15(ve)-.15 G .102(\), one of the).15 F
|
||||
F2(names)2.602 E F0 .101(is not a)2.602 F -.25(va)144 604.8 S .171
|
||||
(lid shell v).25 F .171(ariable name, an attempt is made to turn of)-.25
|
||||
F 2.671(fr)-.25 G .171(eadonly status for a readonly v)-2.671 F .172
|
||||
(ariable, an)-.25 F .96(attempt is made to turn of)144 616.8 R 3.46(fa)
|
||||
-.25 G .96(rray status for an array v)-3.46 F .96
|
||||
(ariable, or an attempt is made to display a)-.25 F(non-e)144 628.8 Q
|
||||
(xistent function with)-.15 E F1<ad66>2.5 E F0(.)A F1
|
||||
(dirs [\255clpv] [+)108 645.6 Q F2(n)A F1 2.5(][)C<ad>-2.5 E F2(n)A F1
|
||||
(])A F0 -.4(Wi)144 657.6 S .328
|
||||
(xport to subsequent commands via the en)-.15 E(vironment.)-.4 E .144
|
||||
(Using `+' instead of `\255' turns of)144 496.8 R 2.643(ft)-.25 G .143
|
||||
(he attrib)-2.643 F .143(ute instead, with the e)-.2 F .143
|
||||
(xceptions that)-.15 F F1(+a)2.643 E F0(and)2.643 E F1(+A)2.643 E F0
|
||||
.143(may not)2.643 F .578(be used to destro)144 508.8 R 3.079(ya)-.1 G
|
||||
.579(rray v)-3.079 F .579(ariables and)-.25 F F1(+r)3.079 E F0 .579
|
||||
(will not remo)3.079 F .879 -.15(ve t)-.15 H .579(he readonly attrib).15
|
||||
F 3.079(ute. When)-.2 F .579(used in a)3.079 F(function,)144 520.8 Q F1
|
||||
(declar)3.544 E(e)-.18 E F0(and)3.544 E F1(typeset)3.544 E F0(mak)3.544
|
||||
E 3.544(ee)-.1 G(ach)-3.544 E F2(name)3.543 E F0 1.043
|
||||
(local, as with the)3.543 F F1(local)3.543 E F0 1.043
|
||||
(command, unless the)3.543 F F1<ad67>3.543 E F0 1.205
|
||||
(option is supplied.)144 532.8 R 1.205(If a v)6.205 F 1.205
|
||||
(ariable name is follo)-.25 F 1.205(wed by =)-.25 F F2(value)A F0 3.705
|
||||
(,t)C 1.205(he v)-3.705 F 1.205(alue of the v)-.25 F 1.205
|
||||
(ariable is set to)-.25 F F2(value)144 544.8 Q F0 5.218(.W)C .218
|
||||
(hen using)-5.218 F F1<ad61>2.718 E F0(or)2.718 E F1<ad41>2.718 E F0
|
||||
.217(and the compound assignment syntax to create array v)2.717 F .217
|
||||
(ariables, addi-)-.25 F .882(tional attrib)144 556.8 R .882
|
||||
(utes do not tak)-.2 F 3.382(ee)-.1 G -.25(ff)-3.382 G .882
|
||||
(ect until subsequent assignments.).25 F .882(The return v)5.882 F .882
|
||||
(alue is 0 unless an)-.25 F(in)144 568.8 Q -.25(va)-.4 G 1.26(lid optio\
|
||||
n is encountered, an attempt is made to de\214ne a function using).25 F
|
||||
/F4 10/Courier@0 SF 1.26(\255f foo=bar)3.76 F F0 3.76(,a)C(n)-3.76 E
|
||||
.187(attempt is made to assign a v)144 580.8 R .187
|
||||
(alue to a readonly v)-.25 F .188
|
||||
(ariable, an attempt is made to assign a v)-.25 F .188(alue to an)-.25 F
|
||||
1.749(array v)144 592.8 R 1.749
|
||||
(ariable without using the compound assignment syntax \(see)-.25 F F1
|
||||
(Arrays)4.248 E F0(abo)4.248 E -.15(ve)-.15 G 1.748(\), one of the).15 F
|
||||
F2(names)144 604.8 Q F0 .359(is not a v)2.858 F .359(alid shell v)-.25 F
|
||||
.359(ariable name, an attempt is made to turn of)-.25 F 2.859(fr)-.25 G
|
||||
.359(eadonly status for a read-)-2.859 F 1.213(only v)144 616.8 R 1.213
|
||||
(ariable, an attempt is made to turn of)-.25 F 3.713(fa)-.25 G 1.213
|
||||
(rray status for an array v)-3.713 F 1.212(ariable, or an attempt is)
|
||||
-.25 F(made to display a non-e)144 628.8 Q(xistent function with)-.15 E
|
||||
F1<ad66>2.5 E F0(.)A F1(dirs [\255clpv] [+)108 645.6 Q F2(n)A F1 2.5(][)
|
||||
C<ad>-2.5 E F2(n)A F1(])A F0 -.4(Wi)144 657.6 S .328
|
||||
(thout options, displays the list of currently remembered directories.)
|
||||
.4 F .329(The def)5.329 F .329(ault display is on a)-.1 F 1.238
|
||||
(single line with directory names separated by spaces.)144 669.6 R 1.238
|
||||
@@ -7457,8 +7458,8 @@ F 2.003(The current directory is)7.003 F(al)144 693.6 Q -.1(wa)-.1 G
|
||||
F1<ad6c>144 717.6 Q F0 .882
|
||||
(Produces a listing using full pathnames; the def)180 717.6 R .881
|
||||
(ault listing format uses a tilde to denote)-.1 F(the home directory)180
|
||||
729.6 Q(.)-.65 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(61)
|
||||
190.395 E 0 Cg EP
|
||||
729.6 Q(.)-.65 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(61)
|
||||
188.455 E 0 Cg EP
|
||||
%%Page: 62 62
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7573,8 +7574,8 @@ F2(\214lename)4.024 E F0 4.024(,o).18 G 4.024(ns)-4.024 G 1.524
|
||||
F .399(guments, the)-.18 F .099(list consists of all enabled shell b)144
|
||||
727.2 R 2.598(uiltins. If)-.2 F F1<ad6e>2.598 E F0 .098
|
||||
(is supplied, only disabled b)2.598 F .098(uiltins are printed.)-.2 F
|
||||
(If)5.098 E F1<ad61>2.598 E F0(GNU Bash 5.0)72 768 Q(2018 October 22)
|
||||
141.235 E(62)190.395 E 0 Cg EP
|
||||
(If)5.098 E F1<ad61>2.598 E F0(GNU Bash 5.0)72 768 Q(2018 December 7)
|
||||
139.295 E(62)188.455 E 0 Cg EP
|
||||
%%Page: 63 63
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7714,8 +7715,8 @@ R .142(alue is 0 unless an in)-.25 F -.25(va)-.4 G .142
|
||||
E F2(last)2.732 E F0 .454(specify history lines out of range.)144 720 R
|
||||
.454(If the)5.454 F F1<ad65>2.954 E F0 .454
|
||||
(option is supplied, the return v)2.954 F .455(alue is the v)-.25 F .455
|
||||
(alue of the)-.25 F(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(63)
|
||||
190.395 E 0 Cg EP
|
||||
(alue of the)-.25 F(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(63)
|
||||
188.455 E 0 Cg EP
|
||||
%%Page: 64 64
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7839,7 +7840,7 @@ F1(name)3.204 E F0(ar)3.204 E(guments)-.18 E .795(are supplied with)144
|
||||
(is supplied, information about remembered commands is printed.)2.822 F
|
||||
.321(The return status is true)5.321 F(unless a)144 710.4 Q F1(name)2.86
|
||||
E F0(is not found or an in)2.68 E -.25(va)-.4 G(lid option is supplied.)
|
||||
.25 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(64)190.395 E 0 Cg
|
||||
.25 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(64)188.455 E 0 Cg
|
||||
EP
|
||||
%%Page: 65 65
|
||||
%%BeginPageSetup
|
||||
@@ -7952,7 +7953,7 @@ E F0(... ])2.5 E(The \214rst form lists the acti)144 703.2 Q .3 -.15
|
||||
(ve j)-.25 H 2.5(obs. The).15 F(options ha)2.5 E .3 -.15(ve t)-.2 H
|
||||
(he follo).15 E(wing meanings:)-.25 E F1<ad6c>144 715.2 Q F0
|
||||
(List process IDs in addition to the normal information.)180 715.2 Q
|
||||
(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(65)190.395 E 0 Cg EP
|
||||
(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(65)188.455 E 0 Cg EP
|
||||
%%Page: 66 66
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -8092,8 +8093,8 @@ F0 .275(is e)2.775 F -.25(va)-.25 G .274
|
||||
(ut before the array element is)-.2 F(assigned.)144 710.4 Q
|
||||
(If not supplied with an e)144 727.2 Q(xplicit origin,)-.15 E F1
|
||||
(map\214le)2.5 E F0(will clear)2.5 E F2(arr)2.5 E(ay)-.15 E F0
|
||||
(before assigning to it.)2.5 E(GNU Bash 5.0)72 768 Q(2018 October 22)
|
||||
141.235 E(66)190.395 E 0 Cg EP
|
||||
(before assigning to it.)2.5 E(GNU Bash 5.0)72 768 Q(2018 December 7)
|
||||
139.295 E(66)188.455 E 0 Cg EP
|
||||
%%Page: 67 67
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -8208,7 +8209,7 @@ when rotating or adding directories to the)180 688.8 R
|
||||
3.768 E F0 1.267(th directory \(counting from the left of the list sho)B
|
||||
1.267(wn by)-.25 F F1(dirs)180 724.8 Q F0 2.5(,s)C
|
||||
(tarting with zero\) is at the top.)-2.5 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(67)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(67)188.455 E 0 Cg EP
|
||||
%%Page: 68 68
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -8335,7 +8336,7 @@ E F0(Display)180 662.4 Q F2(pr)3.661 E(ompt)-.45 E F0 1.161
|
||||
(he backslash is considered to be part of)-5.543 F .493(the line.)180
|
||||
698.4 R .493(In particular)5.493 F 2.993(,ab)-.4 G(ackslash-ne)-2.993 E
|
||||
.493(wline pair may not then be used as a line continua-)-.25 F(tion.)
|
||||
180 710.4 Q(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(68)190.395 E
|
||||
180 710.4 Q(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(68)188.455 E
|
||||
0 Cg EP
|
||||
%%Page: 69 69
|
||||
%%BeginPageSetup
|
||||
@@ -8481,7 +8482,7 @@ F0 .087(\), a)B F2(list)2.587 E F0 2.587(,o)C(r)-2.587 E(a)184 727.2 Q
|
||||
F2 1.52(compound command)4.02 F F0(\(see)4.021 E F3 1.521(SHELL GRAMMAR)
|
||||
4.021 F F0(abo)3.771 E -.15(ve)-.15 G 1.521(\), e).15 F 1.521
|
||||
(xits with a non-zero status.)-.15 F(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(69)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(69)188.455 E 0 Cg EP
|
||||
%%Page: 70 70
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -8576,7 +8577,7 @@ H(nder).15 E F2(HIST)3.087 E(OR)-.162 E(Y)-.315 E/F4 9/Times-Roman@0 SF
|
||||
.15 E F1 -.1(ke)184 666 S(yw).1 E(ord)-.1 E F0(Same as)224 678 Q F1
|
||||
<ad6b>2.5 E F0(.)A F1(monitor)184 690 Q F0(Same as)224 690 Q F1<ad6d>2.5
|
||||
E F0(.)A F1(noclob)184 702 Q(ber)-.1 E F0(Same as)224 714 Q F1<ad43>2.5
|
||||
E F0(.)A(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(70)190.395 E 0
|
||||
E F0(.)A(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(70)188.455 E 0
|
||||
Cg EP
|
||||
%%Page: 71 71
|
||||
%%BeginPageSetup
|
||||
@@ -8686,7 +8687,7 @@ F .532(ault when the shell is inter)-.1 F(-)-.2 E(acti)184 678 Q -.15
|
||||
E(ault,)-.1 E F1(bash)2.686 E F0(follo)2.686 E .186
|
||||
(ws the logical chain of directories when performing com-)-.25 F
|
||||
(mands which change the current directory)184 726 Q(.)-.65 E
|
||||
(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(71)190.395 E 0 Cg EP
|
||||
(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(71)188.455 E 0 Cg EP
|
||||
%%Page: 72 72
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -8805,7 +8806,7 @@ F1(cdable_v)144 646.8 Q(ars)-.1 E F0 .155(If set, an ar)184 658.8 R .155
|
||||
(orrection is found, the corrected \214lename is printed, and)-3.27 F
|
||||
(the command proceeds.)184 718.8 Q
|
||||
(This option is only used by interacti)5 E .3 -.15(ve s)-.25 H(hells.)
|
||||
.15 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(72)190.395 E 0 Cg
|
||||
.15 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(72)188.455 E 0 Cg
|
||||
EP
|
||||
%%Page: 73 73
|
||||
%%BeginPageSetup
|
||||
@@ -8912,8 +8913,8 @@ F 1.058(xit\), and does not reset the loop state when a shell)-.15 F
|
||||
-2.942 F .442(ASH_ARGV and B)-.35 F .442(ASH_ARGC before)-.35 F(the)184
|
||||
696 Q 2.5(ya)-.15 G(re used, re)-2.5 E -.05(ga)-.15 G
|
||||
(rdless of whether or not e).05 E(xtended deb)-.15 E
|
||||
(ugging mode is enabled.)-.2 E(GNU Bash 5.0)72 768 Q(2018 October 22)
|
||||
141.235 E(73)190.395 E 0 Cg EP
|
||||
(ugging mode is enabled.)-.2 E(GNU Bash 5.0)72 768 Q(2018 December 7)
|
||||
139.295 E(73)188.455 E 0 Cg EP
|
||||
%%Page: 74 74
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -9028,7 +9029,7 @@ E F0(")A F4(string)A F0 4.973("q)C 2.473(uoting is performed within)
|
||||
(Matching)184 720 Q F0(abo)2.964 E -.15(ve)-.15 G 3.214(\)b).15 G(eha)
|
||||
-3.214 E 1.014 -.15(ve a)-.2 H 3.214(si).15 G 3.214(fi)-3.214 G 3.214
|
||||
(nt)-3.214 G .714(he traditional C locale when performing comparisons.)
|
||||
-3.214 F(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(74)190.395 E 0
|
||||
-3.214 F(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(74)188.455 E 0
|
||||
Cg EP
|
||||
%%Page: 75 75
|
||||
%%BeginPageSetup
|
||||
@@ -9124,7 +9125,7 @@ Q F0 .324(If set, and)184 684 R F1 -.18(re)2.824 G(adline).18 E F0 .324
|
||||
(will not attempt to search the)2.824 F F2 -.666(PA)2.825 G(TH)-.189 E
|
||||
F0 .325(for possible)2.575 F
|
||||
(completions when completion is attempted on an empty line.)184 696 Q
|
||||
(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(75)190.395 E 0 Cg EP
|
||||
(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(75)188.455 E 0 Cg EP
|
||||
%%Page: 76 76
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -9222,7 +9223,7 @@ E F0 5.26(.T)C .26(his may be used to o)-5.26 F -.15(ve)-.15 G .26
|
||||
(ex)144 699.6 S(pr1).2 E F0<ad>2.5 E F1(a)A F3 -.2(ex)2.5 G(pr2).2 E F0
|
||||
-.35(Tr)180 711.6 S(ue if both).35 E F3 -.2(ex)2.5 G(pr1).2 E F0(and)2.5
|
||||
E F3 -.2(ex)2.5 G(pr2).2 E F0(are true.)2.52 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(76)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(76)188.455 E 0 Cg EP
|
||||
%%Page: 77 77
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -9346,7 +9347,7 @@ ro e)144 710.4 R .184(xit status, subject to)-.15 F 1.92(the follo)144
|
||||
722.4 R 1.92(wing conditions.)-.25 F(The)6.92 E F3(ERR)4.42 E F0 1.92
|
||||
(trap is not e)4.17 F -.15(xe)-.15 G 1.92(cuted if the f).15 F 1.92
|
||||
(ailed command is part of the)-.1 F(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(77)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(77)188.455 E 0 Cg EP
|
||||
%%Page: 78 78
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -9473,7 +9474,7 @@ Q F1<ad73>144 651.6 Q F0(The maximum stack size)180 651.6 Q F1<ad74>144
|
||||
(The maximum amount of virtual memory a)180 687.6 R -.25(va)-.2 G .47
|
||||
(ilable to the shell and, on some systems, to).25 F(its children)180
|
||||
699.6 Q F1<ad78>144 711.6 Q F0(The maximum number of \214le locks)180
|
||||
711.6 Q(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(78)190.395 E 0
|
||||
711.6 Q(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(78)188.455 E 0
|
||||
Cg EP
|
||||
%%Page: 79 79
|
||||
%%BeginPageSetup
|
||||
@@ -9605,7 +9606,7 @@ F4(,)A F3 -.666(PA)2.25 G(TH)-.189 E F4(,)A F3(ENV)2.25 E F4(,)A F0(or)
|
||||
(hash)2.949 E F0 -.2(bu)2.949 G .449(iltin com-).2 F(mand)144 700.8 Q
|
||||
<83>108 717.6 Q(importing function de\214nitions from the shell en)144
|
||||
717.6 Q(vironment at startup)-.4 E(GNU Bash 5.0)72 768 Q
|
||||
(2018 October 22)141.235 E(79)190.395 E 0 Cg EP
|
||||
(2018 December 7)139.295 E(79)188.455 E 0 Cg EP
|
||||
%%Page: 80 80
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -9680,7 +9681,7 @@ E F0(.)A .411(Once you ha)108 655.2 R .711 -.15(ve d)-.2 H .411
|
||||
(be mailed to)108 679.2 Q F4 -.2(bu)2.5 G(g-bash@gnu.or).2 E(g)-.37 E F0
|
||||
(or posted to the Usenet ne)2.5 E(wsgroup)-.25 E F2(gnu.bash.b)2.5 E(ug)
|
||||
-.2 E F0(.)A(ALL b)108 696 Q(ug reports should include:)-.2 E
|
||||
(GNU Bash 5.0)72 768 Q(2018 October 22)141.235 E(80)190.395 E 0 Cg EP
|
||||
(GNU Bash 5.0)72 768 Q(2018 December 7)139.295 E(80)188.455 E 0 Cg EP
|
||||
%%Page: 81 81
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -9715,8 +9716,8 @@ place the sequence of commands between parentheses to force it into a)
|
||||
-.25 F(subshell, which may be stopped as a unit.)108 309.6 Q(Array v)108
|
||||
326.4 Q(ariables may not \(yet\) be e)-.25 E(xported.)-.15 E
|
||||
(There may be only one acti)108 343.2 Q .3 -.15(ve c)-.25 H
|
||||
(oprocess at a time.).15 E(GNU Bash 5.0)72 768 Q(2018 October 22)141.235
|
||||
E(81)190.395 E 0 Cg EP
|
||||
(oprocess at a time.).15 E(GNU Bash 5.0)72 768 Q(2018 December 7)139.295
|
||||
E(81)188.455 E 0 Cg EP
|
||||
%%Trailer
|
||||
end
|
||||
%%EOF
|
||||
|
||||
Binary file not shown.
+8
-7
@@ -1,9 +1,9 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<!-- This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.0, 9 November 2018).
|
||||
the Bash shell (version 5.0, 7 December 2018).
|
||||
|
||||
This is Edition 5.0, last updated 9 November 2018,
|
||||
This is Edition 5.0, last updated 7 December 2018,
|
||||
of The GNU Bash Reference Manual,
|
||||
for Bash, Version 5.0.
|
||||
|
||||
@@ -284,10 +284,10 @@ Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previou
|
||||
<h1 class="top">Bash Features</h1>
|
||||
|
||||
<p>This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.0, 9 November 2018).
|
||||
the Bash shell (version 5.0, 7 December 2018).
|
||||
The Bash home page is <a href="http://www.gnu.org/software/bash/">http://www.gnu.org/software/bash/</a>.
|
||||
</p>
|
||||
<p>This is Edition 5.0, last updated 9 November 2018,
|
||||
<p>This is Edition 5.0, last updated 7 December 2018,
|
||||
of <cite>The GNU Bash Reference Manual</cite>,
|
||||
for <code>Bash</code>, Version 5.0.
|
||||
</p>
|
||||
@@ -1094,7 +1094,8 @@ to delimit commands, equivalent to a semicolon.
|
||||
</p>
|
||||
<p>If a command is terminated by the control operator ‘<samp>&</samp>’,
|
||||
the shell executes the command asynchronously in a subshell.
|
||||
This is known as executing the command in the <var>background</var>.
|
||||
This is known as executing the command in the <var>background</var>,
|
||||
and these are referred to as <var>asynchronous</var> commands.
|
||||
The shell does not wait for the command to finish, and the return
|
||||
status is 0 (true).
|
||||
When job control is not active (see <a href="#Job-Control">Job Control</a>),
|
||||
@@ -4904,8 +4905,8 @@ the environment.
|
||||
</dl>
|
||||
|
||||
<p>Using ‘<samp>+</samp>’ instead of ‘<samp>-</samp>’ turns off the attribute instead,
|
||||
with the exceptions that ‘<samp>+a</samp>’
|
||||
may not be used to destroy an array variable and ‘<samp>+r</samp>’ will not
|
||||
with the exceptions that ‘<samp>+a</samp>’ and ‘<samp>+A</samp>’
|
||||
may not be used to destroy array variables and ‘<samp>+r</samp>’ will not
|
||||
remove the readonly attribute.
|
||||
When used in a function, <code>declare</code> makes each <var>name</var> local,
|
||||
as with the <code>local</code> command, unless the <samp>-g</samp> option is used.
|
||||
|
||||
+141
-139
@@ -2,9 +2,9 @@ This is bashref.info, produced by makeinfo version 6.5 from
|
||||
bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 9 November 2018).
|
||||
Bash shell (version 5.0, 7 December 2018).
|
||||
|
||||
This is Edition 5.0, last updated 9 November 2018, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 7 December 2018, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Copyright (C) 1988-2018 Free Software Foundation, Inc.
|
||||
@@ -27,10 +27,10 @@ Bash Features
|
||||
*************
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 9 November 2018). The Bash home page is
|
||||
Bash shell (version 5.0, 7 December 2018). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.0, last updated 9 November 2018, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 7 December 2018, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -619,11 +619,12 @@ commands, equivalent to a semicolon.
|
||||
|
||||
If a command is terminated by the control operator '&', the shell
|
||||
executes the command asynchronously in a subshell. This is known as
|
||||
executing the command in the BACKGROUND. The shell does not wait for
|
||||
the command to finish, and the return status is 0 (true). When job
|
||||
control is not active (*note Job Control::), the standard input for
|
||||
asynchronous commands, in the absence of any explicit redirections, is
|
||||
redirected from '/dev/null'.
|
||||
executing the command in the BACKGROUND, and these are referred to as
|
||||
ASYNCHRONOUS commands. The shell does not wait for the command to
|
||||
finish, and the return status is 0 (true). When job control is not
|
||||
active (*note Job Control::), the standard input for asynchronous
|
||||
commands, in the absence of any explicit redirections, is redirected
|
||||
from '/dev/null'.
|
||||
|
||||
Commands separated by a ';' are executed sequentially; the shell
|
||||
waits for each command to terminate in turn. The return status is the
|
||||
@@ -3543,11 +3544,12 @@ standard.
|
||||
environment.
|
||||
|
||||
Using '+' instead of '-' turns off the attribute instead, with the
|
||||
exceptions that '+a' may not be used to destroy an array variable
|
||||
and '+r' will not remove the readonly attribute. When used in a
|
||||
function, 'declare' makes each NAME local, as with the 'local'
|
||||
command, unless the '-g' option is used. If a variable name is
|
||||
followed by =VALUE, the value of the variable is set to VALUE.
|
||||
exceptions that '+a' and '+A' may not be used to destroy array
|
||||
variables and '+r' will not remove the readonly attribute. When
|
||||
used in a function, 'declare' makes each NAME local, as with the
|
||||
'local' command, unless the '-g' option is used. If a variable
|
||||
name is followed by =VALUE, the value of the variable is set to
|
||||
VALUE.
|
||||
|
||||
When using '-a' or '-A' and the compound assignment syntax to
|
||||
create array variables, additional attributes do not take effect
|
||||
@@ -10984,8 +10986,8 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 7)
|
||||
* disown: Job Control Builtins.
|
||||
(line 92)
|
||||
* echo: Bash Builtins. (line 245)
|
||||
* enable: Bash Builtins. (line 294)
|
||||
* echo: Bash Builtins. (line 246)
|
||||
* enable: Bash Builtins. (line 295)
|
||||
* eval: Bourne Shell Builtins.
|
||||
(line 94)
|
||||
* exec: Bourne Shell Builtins.
|
||||
@@ -11002,26 +11004,26 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 143)
|
||||
* hash: Bourne Shell Builtins.
|
||||
(line 186)
|
||||
* help: Bash Builtins. (line 323)
|
||||
* help: Bash Builtins. (line 324)
|
||||
* history: Bash History Builtins.
|
||||
(line 40)
|
||||
* jobs: Job Control Builtins.
|
||||
(line 27)
|
||||
* kill: Job Control Builtins.
|
||||
(line 58)
|
||||
* let: Bash Builtins. (line 342)
|
||||
* local: Bash Builtins. (line 350)
|
||||
* logout: Bash Builtins. (line 364)
|
||||
* mapfile: Bash Builtins. (line 369)
|
||||
* let: Bash Builtins. (line 343)
|
||||
* local: Bash Builtins. (line 351)
|
||||
* logout: Bash Builtins. (line 365)
|
||||
* mapfile: Bash Builtins. (line 370)
|
||||
* popd: Directory Stack Builtins.
|
||||
(line 35)
|
||||
* printf: Bash Builtins. (line 415)
|
||||
* printf: Bash Builtins. (line 416)
|
||||
* pushd: Directory Stack Builtins.
|
||||
(line 53)
|
||||
* pwd: Bourne Shell Builtins.
|
||||
(line 206)
|
||||
* read: Bash Builtins. (line 459)
|
||||
* readarray: Bash Builtins. (line 553)
|
||||
* read: Bash Builtins. (line 460)
|
||||
* readarray: Bash Builtins. (line 554)
|
||||
* readonly: Bourne Shell Builtins.
|
||||
(line 216)
|
||||
* return: Bourne Shell Builtins.
|
||||
@@ -11030,7 +11032,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* shift: Bourne Shell Builtins.
|
||||
(line 256)
|
||||
* shopt: The Shopt Builtin. (line 9)
|
||||
* source: Bash Builtins. (line 562)
|
||||
* source: Bash Builtins. (line 563)
|
||||
* suspend: Job Control Builtins.
|
||||
(line 104)
|
||||
* test: Bourne Shell Builtins.
|
||||
@@ -11039,12 +11041,12 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 348)
|
||||
* trap: Bourne Shell Builtins.
|
||||
(line 354)
|
||||
* type: Bash Builtins. (line 567)
|
||||
* typeset: Bash Builtins. (line 599)
|
||||
* ulimit: Bash Builtins. (line 605)
|
||||
* type: Bash Builtins. (line 568)
|
||||
* typeset: Bash Builtins. (line 600)
|
||||
* ulimit: Bash Builtins. (line 606)
|
||||
* umask: Bourne Shell Builtins.
|
||||
(line 403)
|
||||
* unalias: Bash Builtins. (line 704)
|
||||
* unalias: Bash Builtins. (line 705)
|
||||
* unset: Bourne Shell Builtins.
|
||||
(line 421)
|
||||
* wait: Job Control Builtins.
|
||||
@@ -11699,115 +11701,115 @@ Node: Shell Commands19354
|
||||
Node: Simple Commands20226
|
||||
Node: Pipelines20857
|
||||
Node: Lists23789
|
||||
Node: Compound Commands25528
|
||||
Node: Looping Constructs26540
|
||||
Node: Conditional Constructs29035
|
||||
Node: Command Grouping40118
|
||||
Node: Coprocesses41597
|
||||
Node: GNU Parallel43500
|
||||
Node: Shell Functions47558
|
||||
Node: Shell Parameters54641
|
||||
Node: Positional Parameters59054
|
||||
Node: Special Parameters59954
|
||||
Node: Shell Expansions63708
|
||||
Node: Brace Expansion65831
|
||||
Node: Tilde Expansion68555
|
||||
Node: Shell Parameter Expansion71172
|
||||
Node: Command Substitution85628
|
||||
Node: Arithmetic Expansion86983
|
||||
Node: Process Substitution87915
|
||||
Node: Word Splitting89035
|
||||
Node: Filename Expansion90979
|
||||
Node: Pattern Matching93509
|
||||
Node: Quote Removal97495
|
||||
Node: Redirections97790
|
||||
Node: Executing Commands107348
|
||||
Node: Simple Command Expansion108018
|
||||
Node: Command Search and Execution109948
|
||||
Node: Command Execution Environment112324
|
||||
Node: Environment115308
|
||||
Node: Exit Status116967
|
||||
Node: Signals118637
|
||||
Node: Shell Scripts120604
|
||||
Node: Shell Builtin Commands123119
|
||||
Node: Bourne Shell Builtins125157
|
||||
Node: Bash Builtins145907
|
||||
Node: Modifying Shell Behavior174820
|
||||
Node: The Set Builtin175165
|
||||
Node: The Shopt Builtin185578
|
||||
Node: Special Builtins203150
|
||||
Node: Shell Variables204129
|
||||
Node: Bourne Shell Variables204566
|
||||
Node: Bash Variables206670
|
||||
Node: Bash Features237130
|
||||
Node: Invoking Bash238029
|
||||
Node: Bash Startup Files244042
|
||||
Node: Interactive Shells249145
|
||||
Node: What is an Interactive Shell?249555
|
||||
Node: Is this Shell Interactive?250204
|
||||
Node: Interactive Shell Behavior251019
|
||||
Node: Bash Conditional Expressions254506
|
||||
Node: Shell Arithmetic259083
|
||||
Node: Aliases261900
|
||||
Node: Arrays264520
|
||||
Node: The Directory Stack269886
|
||||
Node: Directory Stack Builtins270670
|
||||
Node: Controlling the Prompt273638
|
||||
Node: The Restricted Shell276404
|
||||
Node: Bash POSIX Mode278229
|
||||
Node: Job Control289162
|
||||
Node: Job Control Basics289622
|
||||
Node: Job Control Builtins294590
|
||||
Node: Job Control Variables299317
|
||||
Node: Command Line Editing300473
|
||||
Node: Introduction and Notation302144
|
||||
Node: Readline Interaction303767
|
||||
Node: Readline Bare Essentials304958
|
||||
Node: Readline Movement Commands306741
|
||||
Node: Readline Killing Commands307701
|
||||
Node: Readline Arguments309619
|
||||
Node: Searching310663
|
||||
Node: Readline Init File312849
|
||||
Node: Readline Init File Syntax313996
|
||||
Node: Conditional Init Constructs334435
|
||||
Node: Sample Init File338631
|
||||
Node: Bindable Readline Commands341748
|
||||
Node: Commands For Moving342952
|
||||
Node: Commands For History344801
|
||||
Node: Commands For Text349096
|
||||
Node: Commands For Killing352484
|
||||
Node: Numeric Arguments354965
|
||||
Node: Commands For Completion356104
|
||||
Node: Keyboard Macros360295
|
||||
Node: Miscellaneous Commands360982
|
||||
Node: Readline vi Mode366935
|
||||
Node: Programmable Completion367842
|
||||
Node: Programmable Completion Builtins375622
|
||||
Node: A Programmable Completion Example386315
|
||||
Node: Using History Interactively391555
|
||||
Node: Bash History Facilities392239
|
||||
Node: Bash History Builtins395244
|
||||
Node: History Interaction399775
|
||||
Node: Event Designators403395
|
||||
Node: Word Designators404614
|
||||
Node: Modifiers406251
|
||||
Node: Installing Bash407653
|
||||
Node: Basic Installation408790
|
||||
Node: Compilers and Options412048
|
||||
Node: Compiling For Multiple Architectures412789
|
||||
Node: Installation Names414482
|
||||
Node: Specifying the System Type415300
|
||||
Node: Sharing Defaults416016
|
||||
Node: Operation Controls416689
|
||||
Node: Optional Features417647
|
||||
Node: Reporting Bugs428165
|
||||
Node: Major Differences From The Bourne Shell429359
|
||||
Node: GNU Free Documentation License446211
|
||||
Node: Indexes471388
|
||||
Node: Builtin Index471842
|
||||
Node: Reserved Word Index478669
|
||||
Node: Variable Index481117
|
||||
Node: Function Index496868
|
||||
Node: Concept Index510171
|
||||
Node: Compound Commands25580
|
||||
Node: Looping Constructs26592
|
||||
Node: Conditional Constructs29087
|
||||
Node: Command Grouping40170
|
||||
Node: Coprocesses41649
|
||||
Node: GNU Parallel43552
|
||||
Node: Shell Functions47610
|
||||
Node: Shell Parameters54693
|
||||
Node: Positional Parameters59106
|
||||
Node: Special Parameters60006
|
||||
Node: Shell Expansions63760
|
||||
Node: Brace Expansion65883
|
||||
Node: Tilde Expansion68607
|
||||
Node: Shell Parameter Expansion71224
|
||||
Node: Command Substitution85680
|
||||
Node: Arithmetic Expansion87035
|
||||
Node: Process Substitution87967
|
||||
Node: Word Splitting89087
|
||||
Node: Filename Expansion91031
|
||||
Node: Pattern Matching93561
|
||||
Node: Quote Removal97547
|
||||
Node: Redirections97842
|
||||
Node: Executing Commands107400
|
||||
Node: Simple Command Expansion108070
|
||||
Node: Command Search and Execution110000
|
||||
Node: Command Execution Environment112376
|
||||
Node: Environment115360
|
||||
Node: Exit Status117019
|
||||
Node: Signals118689
|
||||
Node: Shell Scripts120656
|
||||
Node: Shell Builtin Commands123171
|
||||
Node: Bourne Shell Builtins125209
|
||||
Node: Bash Builtins145959
|
||||
Node: Modifying Shell Behavior174884
|
||||
Node: The Set Builtin175229
|
||||
Node: The Shopt Builtin185642
|
||||
Node: Special Builtins203214
|
||||
Node: Shell Variables204193
|
||||
Node: Bourne Shell Variables204630
|
||||
Node: Bash Variables206734
|
||||
Node: Bash Features237194
|
||||
Node: Invoking Bash238093
|
||||
Node: Bash Startup Files244106
|
||||
Node: Interactive Shells249209
|
||||
Node: What is an Interactive Shell?249619
|
||||
Node: Is this Shell Interactive?250268
|
||||
Node: Interactive Shell Behavior251083
|
||||
Node: Bash Conditional Expressions254570
|
||||
Node: Shell Arithmetic259147
|
||||
Node: Aliases261964
|
||||
Node: Arrays264584
|
||||
Node: The Directory Stack269950
|
||||
Node: Directory Stack Builtins270734
|
||||
Node: Controlling the Prompt273702
|
||||
Node: The Restricted Shell276468
|
||||
Node: Bash POSIX Mode278293
|
||||
Node: Job Control289226
|
||||
Node: Job Control Basics289686
|
||||
Node: Job Control Builtins294654
|
||||
Node: Job Control Variables299381
|
||||
Node: Command Line Editing300537
|
||||
Node: Introduction and Notation302208
|
||||
Node: Readline Interaction303831
|
||||
Node: Readline Bare Essentials305022
|
||||
Node: Readline Movement Commands306805
|
||||
Node: Readline Killing Commands307765
|
||||
Node: Readline Arguments309683
|
||||
Node: Searching310727
|
||||
Node: Readline Init File312913
|
||||
Node: Readline Init File Syntax314060
|
||||
Node: Conditional Init Constructs334499
|
||||
Node: Sample Init File338695
|
||||
Node: Bindable Readline Commands341812
|
||||
Node: Commands For Moving343016
|
||||
Node: Commands For History344865
|
||||
Node: Commands For Text349160
|
||||
Node: Commands For Killing352548
|
||||
Node: Numeric Arguments355029
|
||||
Node: Commands For Completion356168
|
||||
Node: Keyboard Macros360359
|
||||
Node: Miscellaneous Commands361046
|
||||
Node: Readline vi Mode366999
|
||||
Node: Programmable Completion367906
|
||||
Node: Programmable Completion Builtins375686
|
||||
Node: A Programmable Completion Example386379
|
||||
Node: Using History Interactively391619
|
||||
Node: Bash History Facilities392303
|
||||
Node: Bash History Builtins395308
|
||||
Node: History Interaction399839
|
||||
Node: Event Designators403459
|
||||
Node: Word Designators404678
|
||||
Node: Modifiers406315
|
||||
Node: Installing Bash407717
|
||||
Node: Basic Installation408854
|
||||
Node: Compilers and Options412112
|
||||
Node: Compiling For Multiple Architectures412853
|
||||
Node: Installation Names414546
|
||||
Node: Specifying the System Type415364
|
||||
Node: Sharing Defaults416080
|
||||
Node: Operation Controls416753
|
||||
Node: Optional Features417711
|
||||
Node: Reporting Bugs428229
|
||||
Node: Major Differences From The Bourne Shell429423
|
||||
Node: GNU Free Documentation License446275
|
||||
Node: Indexes471452
|
||||
Node: Builtin Index471906
|
||||
Node: Reserved Word Index478733
|
||||
Node: Variable Index481181
|
||||
Node: Function Index496932
|
||||
Node: Concept Index510235
|
||||
|
||||
End Tag Table
|
||||
|
||||
Binary file not shown.
+33
-31
@@ -1,7 +1,7 @@
|
||||
%!PS-Adobe-2.0
|
||||
%%Creator: dvips(k) 5.998 Copyright 2018 Radical Eye Software
|
||||
%%Title: bashref.dvi
|
||||
%%CreationDate: Mon Nov 19 20:21:05 2018
|
||||
%%CreationDate: Tue Dec 18 16:43:47 2018
|
||||
%%Pages: 184
|
||||
%%PageOrder: Ascend
|
||||
%%BoundingBox: 0 0 612 792
|
||||
@@ -12,7 +12,7 @@
|
||||
%DVIPSWebPage: (www.radicaleye.com)
|
||||
%DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi
|
||||
%DVIPSParameters: dpi=600
|
||||
%DVIPSSource: TeX output 2018.11.19:1521
|
||||
%DVIPSSource: TeX output 2018.12.18:1143
|
||||
%%BeginProcSet: tex.pro 0 0
|
||||
%!
|
||||
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
|
||||
@@ -7634,18 +7634,18 @@ ifelse
|
||||
TeXDict begin 1 0 bop 150 1318 a Fv(Bash)64 b(Reference)j(Man)-5
|
||||
b(ual)p 150 1385 3600 34 v 2361 1481 a Fu(Reference)31
|
||||
b(Do)s(cumen)m(tation)i(for)d(Bash)2428 1589 y(Edition)h(5.0,)g(for)f
|
||||
Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.0.)3139 1697 y(No)m(v)m(em)m(b)s(er)g
|
||||
(2018)150 4927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11
|
||||
Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.0.)3145 1697 y(Decem)m(b)s(er)g(2018)
|
||||
150 4927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11
|
||||
b(estern)46 b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068
|
||||
y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
|
||||
b(oundation)p 150 5141 3600 17 v eop end
|
||||
%%Page: 2 2
|
||||
TeXDict begin 2 1 bop 150 4279 a Fu(This)35 b(text)h(is)g(a)g(brief)f
|
||||
(description)h(of)f(the)h(features)g(that)g(are)g(presen)m(t)g(in)f
|
||||
(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.0,)c(9)e(No)m(v)m(em)m
|
||||
(b)s(er)i(2018\).)150 4523 y(This)h(is)g(Edition)g(5.0,)j(last)e(up)s
|
||||
(dated)e(9)i(No)m(v)m(em)m(b)s(er)g(2018,)i(of)e Fr(The)e(GNU)i(Bash)g
|
||||
(Reference)g(Man)m(ual)p Fu(,)150 4633 y(for)c Ft(Bash)p
|
||||
(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.0,)c(7)e(Decem)m(b)s
|
||||
(er)i(2018\).)150 4523 y(This)h(is)h(Edition)g(5.0,)i(last)e(up)s
|
||||
(dated)f(7)h(Decem)m(b)s(er)g(2018,)j(of)d Fr(The)f(GNU)h(Bash)g
|
||||
(Reference)h(Man)m(ual)p Fu(,)150 4633 y(for)30 b Ft(Bash)p
|
||||
Fu(,)g(V)-8 b(ersion)31 b(5.0.)150 4767 y(Cop)m(yrigh)m(t)602
|
||||
4764 y(c)577 4767 y Fq(\015)f Fu(1988{2018)35 b(F)-8
|
||||
b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390
|
||||
@@ -8656,18 +8656,19 @@ Ft(&)p Fu(',)i(whic)m(h)150 2113 y(ha)m(v)m(e)32 b(equal)e(precedence.)
|
||||
Ft(&)p Fu(',)h(the)e(shell)h(executes)h(the)f(command)150
|
||||
2597 y(async)m(hronously)g(in)h(a)g(subshell.)39 b(This)28
|
||||
b(is)h(kno)m(wn)f(as)h(executing)h(the)f(command)g(in)f(the)h
|
||||
Fr(bac)m(kground)p Fu(.)150 2707 y(The)f(shell)h(do)s(es)f(not)h(w)m
|
||||
(ait)g(for)f(the)h(command)f(to)i(\014nish,)d(and)h(the)h(return)e
|
||||
(status)i(is)g(0)g(\(true\).)40 b(When)150 2816 y(job)d(con)m(trol)i
|
||||
(is)e(not)g(activ)m(e)j(\(see)e(Chapter)f(7)g([Job)g(Con)m(trol],)j
|
||||
(page)e(103\),)j(the)d(standard)e(input)g(for)150 2926
|
||||
y(async)m(hronous)43 b(commands,)k(in)d(the)f(absence)i(of)f(an)m(y)g
|
||||
(explicit)h(redirections,)j(is)43 b(redirected)h(from)150
|
||||
3036 y Ft(/dev/null)p Fu(.)275 3168 y(Commands)19 b(separated)j(b)m(y)f
|
||||
(a)g(`)p Ft(;)p Fu(')g(are)h(executed)g(sequen)m(tially;)k(the)21
|
||||
b(shell)g(w)m(aits)h(for)f(eac)m(h)h(command)150 3278
|
||||
y(to)31 b(terminate)h(in)e(turn.)39 b(The)30 b(return)f(status)i(is)f
|
||||
(the)h(exit)g(status)g(of)g(the)f(last)h(command)f(executed.)275
|
||||
Fr(bac)m(kground)p Fu(,)150 2707 y(and)42 b(these)i(are)f(referred)g
|
||||
(to)g(as)h Fr(async)m(hronous)i Fu(commands.)78 b(The)43
|
||||
b(shell)g(do)s(es)g(not)g(w)m(ait)h(for)f(the)150 2816
|
||||
y(command)34 b(to)h(\014nish,)f(and)f(the)h(return)f(status)i(is)f(0)g
|
||||
(\(true\).)53 b(When)34 b(job)g(con)m(trol)h(is)f(not)h(activ)m(e)h
|
||||
(\(see)150 2926 y(Chapter)27 b(7)h([Job)f(Con)m(trol],)i(page)g(103\),)
|
||||
h(the)d(standard)g(input)f(for)i(async)m(hronous)f(commands,)h(in)f
|
||||
(the)150 3036 y(absence)k(of)f(an)m(y)h(explicit)h(redirections,)f(is)f
|
||||
(redirected)h(from)f Ft(/dev/null)p Fu(.)275 3168 y(Commands)19
|
||||
b(separated)j(b)m(y)f(a)g(`)p Ft(;)p Fu(')g(are)h(executed)g(sequen)m
|
||||
(tially;)k(the)21 b(shell)g(w)m(aits)h(for)f(eac)m(h)h(command)150
|
||||
3278 y(to)31 b(terminate)h(in)e(turn.)39 b(The)30 b(return)f(status)i
|
||||
(is)f(the)h(exit)g(status)g(of)g(the)f(last)h(command)f(executed.)275
|
||||
3411 y Fm(and)g Fu(and)h Fm(or)g Fu(lists)h(are)g(sequences)f(of)h(one)
|
||||
g(or)f(more)h(pip)s(elines)e(separated)i(b)m(y)g(the)f(con)m(trol)i(op)
|
||||
s(er-)150 3520 y(ators)e(`)p Ft(&&)p Fu(')f(and)g(`)p
|
||||
@@ -12098,17 +12099,18 @@ y Ft(-x)384 b Fu(Mark)30 b(eac)m(h)h Fr(name)k Fu(for)29
|
||||
b(exp)s(ort)h(to)g(subsequen)m(t)f(commands)h(via)g(the)g(en)m(vi-)1110
|
||||
4739 y(ronmen)m(t.)630 4902 y(Using)e(`)p Ft(+)p Fu(')h(instead)f(of)g
|
||||
(`)p Ft(-)p Fu(')g(turns)f(o\013)i(the)f(attribute)h(instead,)g(with)f
|
||||
(the)g(exceptions)h(that)630 5011 y(`)p Ft(+a)p Fu(')h(ma)m(y)h(not)f
|
||||
(b)s(e)f(used)g(to)i(destro)m(y)g(an)f(arra)m(y)g(v)-5
|
||||
b(ariable)31 b(and)f(`)p Ft(+r)p Fu(')g(will)g(not)g(remo)m(v)m(e)i
|
||||
(the)630 5121 y(readonly)e(attribute.)41 b(When)30 b(used)f(in)g(a)h
|
||||
(function,)g Ft(declare)e Fu(mak)m(es)j(eac)m(h)f Fr(name)35
|
||||
b Fu(lo)s(cal,)630 5230 y(as)f(with)f(the)g Ft(local)f
|
||||
Fu(command,)i(unless)f(the)g Ft(-g)g Fu(option)h(is)f(used.)49
|
||||
b(If)33 b(a)h(v)-5 b(ariable)34 b(name)630 5340 y(is)c(follo)m(w)m(ed)i
|
||||
(b)m(y)f(=)p Fr(v)-5 b(alue)p Fu(,)30 b(the)h(v)-5 b(alue)31
|
||||
b(of)f(the)h(v)-5 b(ariable)31 b(is)g(set)g(to)g Fr(v)-5
|
||||
b(alue)p Fu(.)p eop end
|
||||
(the)g(exceptions)h(that)630 5011 y(`)p Ft(+a)p Fu(')23
|
||||
b(and)f(`)p Ft(+A)p Fu(')h(ma)m(y)h(not)f(b)s(e)f(used)g(to)i(destro)m
|
||||
(y)g(arra)m(y)f(v)-5 b(ariables)24 b(and)e(`)p Ft(+r)p
|
||||
Fu(')h(will)g(not)g(remo)m(v)m(e)630 5121 y(the)36 b(readonly)h
|
||||
(attribute.)59 b(When)36 b(used)f(in)h(a)h(function,)g
|
||||
Ft(declare)d Fu(mak)m(es)j(eac)m(h)h Fr(name)630 5230
|
||||
y Fu(lo)s(cal,)e(as)d(with)h(the)f Ft(local)f Fu(command,)j(unless)d
|
||||
(the)i Ft(-g)f Fu(option)h(is)f(used.)49 b(If)33 b(a)h(v)-5
|
||||
b(ariable)630 5340 y(name)30 b(is)h(follo)m(w)m(ed)h(b)m(y)e(=)p
|
||||
Fr(v)-5 b(alue)p Fu(,)31 b(the)f(v)-5 b(alue)31 b(of)g(the)f(v)-5
|
||||
b(ariable)32 b(is)e(set)h(to)g Fr(v)-5 b(alue)p Fu(.)p
|
||||
eop end
|
||||
%%Page: 54 60
|
||||
TeXDict begin 54 59 bop 150 -116 a Fu(Chapter)30 b(4:)41
|
||||
b(Shell)30 b(Builtin)h(Commands)2069 b(54)630 299 y(When)41
|
||||
|
||||
+4
-3
@@ -696,7 +696,8 @@ to delimit commands, equivalent to a semicolon.
|
||||
|
||||
If a command is terminated by the control operator @samp{&},
|
||||
the shell executes the command asynchronously in a subshell.
|
||||
This is known as executing the command in the @var{background}.
|
||||
This is known as executing the command in the @var{background},
|
||||
and these are referred to as @var{asynchronous} commands.
|
||||
The shell does not wait for the command to finish, and the return
|
||||
status is 0 (true).
|
||||
When job control is not active (@pxref{Job Control}),
|
||||
@@ -4207,8 +4208,8 @@ the environment.
|
||||
@end table
|
||||
|
||||
Using @samp{+} instead of @samp{-} turns off the attribute instead,
|
||||
with the exceptions that @samp{+a}
|
||||
may not be used to destroy an array variable and @samp{+r} will not
|
||||
with the exceptions that @samp{+a} and @samp{+A}
|
||||
may not be used to destroy array variables and @samp{+r} will not
|
||||
remove the readonly attribute.
|
||||
When used in a function, @code{declare} makes each @var{name} local,
|
||||
as with the @code{local} command, unless the @option{-g} option is used.
|
||||
|
||||
+10
-10
@@ -441,16 +441,16 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
environment.
|
||||
|
||||
Using `+' instead of `-' turns off the attribute instead, with
|
||||
the exceptions that ++aa may not be used to destroy an array vari-
|
||||
able and ++rr will not remove the readonly attribute. When used
|
||||
in a function, ddeeccllaarree and ttyyppeesseett make each _n_a_m_e local, as with
|
||||
the llooccaall command, unless the --gg option is supplied. If a vari-
|
||||
able name is followed by =_v_a_l_u_e, the value of the variable is
|
||||
set to _v_a_l_u_e. When using --aa or --AA and the compound assignment
|
||||
syntax to create array variables, additional attributes do not
|
||||
take effect until subsequent assignments. The return value is 0
|
||||
unless an invalid option is encountered, an attempt is made to
|
||||
define a function using ``-f foo=bar'', an attempt is made to
|
||||
the exceptions that ++aa and ++AA may not be used to destroy array
|
||||
variables and ++rr will not remove the readonly attribute. When
|
||||
used in a function, ddeeccllaarree and ttyyppeesseett make each _n_a_m_e local, as
|
||||
with the llooccaall command, unless the --gg option is supplied. If a
|
||||
variable name is followed by =_v_a_l_u_e, the value of the variable
|
||||
is set to _v_a_l_u_e. When using --aa or --AA and the compound assign-
|
||||
ment syntax to create array variables, additional attributes do
|
||||
not take effect until subsequent assignments. The return value
|
||||
is 0 unless an invalid option is encountered, an attempt is made
|
||||
to define a function using ``-f foo=bar'', an attempt is made to
|
||||
assign a value to a readonly variable, an attempt is made to
|
||||
assign a value to an array variable without using the compound
|
||||
assignment syntax (see AArrrraayyss above), one of the _n_a_m_e_s is not a
|
||||
|
||||
+39
-39
@@ -1,6 +1,6 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.22.3
|
||||
%%CreationDate: Mon Nov 19 15:20:58 2018
|
||||
%%CreationDate: Tue Dec 18 11:43:40 2018
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%+ font Times-Italic
|
||||
@@ -936,44 +936,44 @@ F .909(alue, all lo)-.25 F(wer)-.25 E .909(-case characters are con)-.2
|
||||
F -.15(ve)-.4 G .91(rted to upper).15 F(-)-.2 E 2.5(case. The)180 549.6
|
||||
R(lo)2.5 E(wer)-.25 E(-case attrib)-.2 E(ute is disabled.)-.2 E F2<ad78>
|
||||
144 561.6 Q F0(Mark)180 561.6 Q F1(name)2.5 E F0 2.5(sf)C(or e)-2.5 E
|
||||
(xport to subsequent commands via the en)-.15 E(vironment.)-.4 E .121
|
||||
(Using `+' instead of `\255' turns of)144 578.4 R 2.621(ft)-.25 G .121
|
||||
(he attrib)-2.621 F .121(ute instead, with the e)-.2 F .12
|
||||
(xceptions that)-.15 F F2(+a)2.62 E F0 .12(may not be used)2.62 F .644
|
||||
(to destro)144 590.4 R 3.144(ya)-.1 G 3.144(na)-3.144 G .644(rray v)
|
||||
-3.144 F .644(ariable and)-.25 F F2(+r)3.145 E F0 .645(will not remo)
|
||||
3.145 F .945 -.15(ve t)-.15 H .645(he readonly attrib).15 F 3.145
|
||||
(ute. When)-.2 F .645(used in a func-)3.145 F(tion,)144 602.4 Q F2
|
||||
(declar)2.835 E(e)-.18 E F0(and)2.835 E F2(typeset)2.835 E F0(mak)2.835
|
||||
E 2.835(ee)-.1 G(ach)-2.835 E F1(name)2.835 E F0 .335
|
||||
(local, as with the)2.835 F F2(local)2.835 E F0 .335
|
||||
(command, unless the)2.835 F F2<ad67>2.835 E F0(option)2.835 E 1.282
|
||||
(is supplied.)144 614.4 R 1.282(If a v)6.282 F 1.283
|
||||
(ariable name is follo)-.25 F 1.283(wed by =)-.25 F F1(value)A F0 3.783
|
||||
(,t)C 1.283(he v)-3.783 F 1.283(alue of the v)-.25 F 1.283
|
||||
(ariable is set to)-.25 F F1(value)3.783 E F0(.)A .927(When using)144
|
||||
626.4 R F2<ad61>3.427 E F0(or)3.427 E F2<ad41>3.427 E F0 .926
|
||||
(and the compound assignment syntax to create array v)3.427 F .926
|
||||
(ariables, additional)-.25 F(attrib)144 638.4 Q .592(utes do not tak)-.2
|
||||
F 3.092(ee)-.1 G -.25(ff)-3.092 G .592
|
||||
(ect until subsequent assignments.).25 F .592(The return v)5.592 F .592
|
||||
(alue is 0 unless an in)-.25 F -.25(va)-.4 G(lid).25 E .429
|
||||
(option is encountered, an attempt is made to de\214ne a function using)
|
||||
144 650.4 R/F5 10/Courier@0 SF .428(\255f foo=bar)2.929 F F0 2.928(,a)C
|
||||
2.928(na)-2.928 G .428(ttempt is)-2.928 F .062(made to assign a v)144
|
||||
662.4 R .062(alue to a readonly v)-.25 F .063
|
||||
(ariable, an attempt is made to assign a v)-.25 F .063
|
||||
(alue to an array v)-.25 F(ari-)-.25 E .102
|
||||
(able without using the compound assignment syntax \(see)144 674.4 R F2
|
||||
(Arrays)2.602 E F0(abo)2.602 E -.15(ve)-.15 G .102(\), one of the).15 F
|
||||
F1(names)2.602 E F0 .101(is not a)2.602 F -.25(va)144 686.4 S .171
|
||||
(lid shell v).25 F .171(ariable name, an attempt is made to turn of)-.25
|
||||
F 2.671(fr)-.25 G .171(eadonly status for a readonly v)-2.671 F .172
|
||||
(ariable, an)-.25 F .96(attempt is made to turn of)144 698.4 R 3.46(fa)
|
||||
-.25 G .96(rray status for an array v)-3.46 F .96
|
||||
(ariable, or an attempt is made to display a)-.25 F(non-e)144 710.4 Q
|
||||
(xistent function with)-.15 E F2<ad66>2.5 E F0(.)A(GNU Bash 5.0)72 768 Q
|
||||
(2004 Apr 20)149.565 E(6)203.725 E 0 Cg EP
|
||||
(xport to subsequent commands via the en)-.15 E(vironment.)-.4 E .144
|
||||
(Using `+' instead of `\255' turns of)144 578.4 R 2.643(ft)-.25 G .143
|
||||
(he attrib)-2.643 F .143(ute instead, with the e)-.2 F .143
|
||||
(xceptions that)-.15 F F2(+a)2.643 E F0(and)2.643 E F2(+A)2.643 E F0
|
||||
.143(may not)2.643 F .578(be used to destro)144 590.4 R 3.079(ya)-.1 G
|
||||
.579(rray v)-3.079 F .579(ariables and)-.25 F F2(+r)3.079 E F0 .579
|
||||
(will not remo)3.079 F .879 -.15(ve t)-.15 H .579(he readonly attrib).15
|
||||
F 3.079(ute. When)-.2 F .579(used in a)3.079 F(function,)144 602.4 Q F2
|
||||
(declar)3.544 E(e)-.18 E F0(and)3.544 E F2(typeset)3.544 E F0(mak)3.544
|
||||
E 3.544(ee)-.1 G(ach)-3.544 E F1(name)3.543 E F0 1.043
|
||||
(local, as with the)3.543 F F2(local)3.543 E F0 1.043
|
||||
(command, unless the)3.543 F F2<ad67>3.543 E F0 1.205
|
||||
(option is supplied.)144 614.4 R 1.205(If a v)6.205 F 1.205
|
||||
(ariable name is follo)-.25 F 1.205(wed by =)-.25 F F1(value)A F0 3.705
|
||||
(,t)C 1.205(he v)-3.705 F 1.205(alue of the v)-.25 F 1.205
|
||||
(ariable is set to)-.25 F F1(value)144 626.4 Q F0 5.218(.W)C .218
|
||||
(hen using)-5.218 F F2<ad61>2.718 E F0(or)2.718 E F2<ad41>2.718 E F0
|
||||
.217(and the compound assignment syntax to create array v)2.717 F .217
|
||||
(ariables, addi-)-.25 F .882(tional attrib)144 638.4 R .882
|
||||
(utes do not tak)-.2 F 3.382(ee)-.1 G -.25(ff)-3.382 G .882
|
||||
(ect until subsequent assignments.).25 F .882(The return v)5.882 F .882
|
||||
(alue is 0 unless an)-.25 F(in)144 650.4 Q -.25(va)-.4 G 1.26(lid optio\
|
||||
n is encountered, an attempt is made to de\214ne a function using).25 F
|
||||
/F5 10/Courier@0 SF 1.26(\255f foo=bar)3.76 F F0 3.76(,a)C(n)-3.76 E
|
||||
.187(attempt is made to assign a v)144 662.4 R .187
|
||||
(alue to a readonly v)-.25 F .188
|
||||
(ariable, an attempt is made to assign a v)-.25 F .188(alue to an)-.25 F
|
||||
1.749(array v)144 674.4 R 1.749
|
||||
(ariable without using the compound assignment syntax \(see)-.25 F F2
|
||||
(Arrays)4.248 E F0(abo)4.248 E -.15(ve)-.15 G 1.748(\), one of the).15 F
|
||||
F1(names)144 686.4 Q F0 .359(is not a v)2.858 F .359(alid shell v)-.25 F
|
||||
.359(ariable name, an attempt is made to turn of)-.25 F 2.859(fr)-.25 G
|
||||
.359(eadonly status for a read-)-2.859 F 1.213(only v)144 698.4 R 1.213
|
||||
(ariable, an attempt is made to turn of)-.25 F 3.713(fa)-.25 G 1.213
|
||||
(rray status for an array v)-3.713 F 1.212(ariable, or an attempt is)
|
||||
-.25 F(made to display a non-e)144 710.4 Q(xistent function with)-.15 E
|
||||
F2<ad66>2.5 E F0(.)A(GNU Bash 5.0)72 768 Q(2004 Apr 20)149.565 E(6)
|
||||
203.725 E 0 Cg EP
|
||||
%%Page: 7 7
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.22.3
|
||||
%%CreationDate: Mon Nov 19 15:20:58 2018
|
||||
%%CreationDate: Tue Dec 18 11:43:41 2018
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%DocumentSuppliedResources: procset grops 1.22 3
|
||||
|
||||
+3
-3
@@ -2,10 +2,10 @@
|
||||
Copyright (C) 1988-2018 Free Software Foundation, Inc.
|
||||
@end ignore
|
||||
|
||||
@set LASTCHANGE Fri Nov 9 14:24:49 EST 2018
|
||||
@set LASTCHANGE Fri Dec 7 09:49:07 EST 2018
|
||||
|
||||
@set EDITION 5.0
|
||||
@set VERSION 5.0
|
||||
|
||||
@set UPDATED 9 November 2018
|
||||
@set UPDATED-MONTH November 2018
|
||||
@set UPDATED 7 December 2018
|
||||
@set UPDATED-MONTH December 2018
|
||||
|
||||
@@ -336,9 +336,9 @@ int flags;
|
||||
} else if (flags & OPT_DEV)
|
||||
printf("%d\n", st->st_dev);
|
||||
else if (flags & OPT_INO)
|
||||
printf("%d\n", st->st_ino);
|
||||
printf("%lu\n", (unsigned long)st->st_ino);
|
||||
else if (flags & OPT_FID)
|
||||
printf("%d:%ld\n", st->st_dev, st->st_ino);
|
||||
printf("%d:%lu\n", st->st_dev, (unsigned long)st->st_ino);
|
||||
else if (flags & OPT_NLINK)
|
||||
printf("%d\n", st->st_nlink);
|
||||
else if (flags & OPT_LNKNAM) {
|
||||
|
||||
@@ -161,7 +161,7 @@ long_double_format (char const *fmt)
|
||||
strcpy (ldfmt + length_modifier_offset + 1,
|
||||
fmt + length_modifier_offset + has_L);
|
||||
#else
|
||||
strcpy (ldfmt + length_modifier_offset, fmt + length_modifier_offset)
|
||||
strcpy (ldfmt + length_modifier_offset, fmt + length_modifier_offset);
|
||||
#endif
|
||||
return ldfmt;
|
||||
}
|
||||
|
||||
+13
-4
@@ -1553,6 +1553,15 @@ execute_in_subshell (command, asynchronous, pipe_in, pipe_out, fds_to_close)
|
||||
trap strings if we run trap to change a signal disposition. */
|
||||
reset_signal_handlers ();
|
||||
subshell_environment |= SUBSHELL_RESETTRAP;
|
||||
#if 0 /* TAG:bash-5.1 */
|
||||
/* We are in a subshell, so forget that we are running a trap handler or
|
||||
that the signal handler has changed (we haven't changed it!) */
|
||||
if (running_trap > 0)
|
||||
{
|
||||
run_trap_cleanup (running_trap - 1);
|
||||
running_trap = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Make sure restore_original_signals doesn't undo the work done by
|
||||
make_child to ensure that asynchronous children are immune to SIGINT
|
||||
@@ -1607,7 +1616,7 @@ execute_in_subshell (command, asynchronous, pipe_in, pipe_out, fds_to_close)
|
||||
async_redirect_stdin ();
|
||||
|
||||
#if 0
|
||||
/* XXX - TAG: bash-5.1 */
|
||||
/* XXX - TAG:bash-5.1 */
|
||||
if (user_subshell && command->type == cm_subshell)
|
||||
optimize_subshell_command (command->value.Subshell->command);
|
||||
#endif
|
||||
@@ -2976,7 +2985,7 @@ eval_arith_for_expr (l, okp)
|
||||
|
||||
command_string_index = 0;
|
||||
print_arith_command (new);
|
||||
if (signal_in_progress (DEBUG_TRAP) == 0)
|
||||
if (signal_in_progress (DEBUG_TRAP) == 0 && running_trap == 0)
|
||||
{
|
||||
FREE (the_printed_command_except_trap);
|
||||
the_printed_command_except_trap = savestring (the_printed_command);
|
||||
@@ -3708,7 +3717,7 @@ execute_arith_command (arith_command)
|
||||
command_string_index = 0;
|
||||
print_arith_command (arith_command->exp);
|
||||
|
||||
if (signal_in_progress (DEBUG_TRAP) == 0)
|
||||
if (signal_in_progress (DEBUG_TRAP) == 0 && running_trap == 0)
|
||||
{
|
||||
FREE (the_printed_command_except_trap);
|
||||
the_printed_command_except_trap = savestring (the_printed_command);
|
||||
@@ -3909,7 +3918,7 @@ execute_cond_command (cond_command)
|
||||
command_string_index = 0;
|
||||
print_cond_command (cond_command);
|
||||
|
||||
if (signal_in_progress (DEBUG_TRAP) == 0)
|
||||
if (signal_in_progress (DEBUG_TRAP) == 0 && running_trap == 0)
|
||||
{
|
||||
FREE (the_printed_command_except_trap);
|
||||
the_printed_command_except_trap = savestring (the_printed_command);
|
||||
|
||||
@@ -214,7 +214,7 @@ static intmax_t exp5 __P((void));
|
||||
static intmax_t exp4 __P((void));
|
||||
static intmax_t expshift __P((void));
|
||||
static intmax_t exp3 __P((void));
|
||||
static intmax_t exp2 __P((void));
|
||||
static intmax_t expmuldiv __P((void));
|
||||
static intmax_t exppower __P((void));
|
||||
static intmax_t exp1 __P((void));
|
||||
static intmax_t exp0 __P((void));
|
||||
@@ -342,7 +342,7 @@ expr_bind_variable (lhs, rhs)
|
||||
#if defined (ARRAY_VARS)
|
||||
/* This is similar to the logic in arrayfunc.c:valid_array_subscript when
|
||||
you pass VA_NOEXPAND. */
|
||||
static char *
|
||||
static int
|
||||
expr_skipsubscript (vp, cp)
|
||||
char *vp, *cp;
|
||||
{
|
||||
@@ -858,14 +858,14 @@ exp3 ()
|
||||
{
|
||||
register intmax_t val1, val2;
|
||||
|
||||
val1 = exp2 ();
|
||||
val1 = expmuldiv ();
|
||||
|
||||
while ((curtok == PLUS) || (curtok == MINUS))
|
||||
{
|
||||
int op = curtok;
|
||||
|
||||
readtok ();
|
||||
val2 = exp2 ();
|
||||
val2 = expmuldiv ();
|
||||
|
||||
if (op == PLUS)
|
||||
val1 += val2;
|
||||
@@ -877,7 +877,7 @@ exp3 ()
|
||||
}
|
||||
|
||||
static intmax_t
|
||||
exp2 ()
|
||||
expmuldiv ()
|
||||
{
|
||||
register intmax_t val1, val2;
|
||||
#if defined (HAVE_IMAXDIV)
|
||||
|
||||
@@ -343,7 +343,7 @@ extern char *dirspell __P((char *));
|
||||
|
||||
/* declarations for functions defined in lib/sh/strcasecmp.c */
|
||||
#if !defined (HAVE_STRCASECMP)
|
||||
extern int strncasecmp __P((const char *, const char *, int));
|
||||
extern int strncasecmp __P((const char *, const char *, size_t));
|
||||
extern int strcasecmp __P((const char *, const char *));
|
||||
#endif /* HAVE_STRCASECMP */
|
||||
|
||||
|
||||
@@ -68,7 +68,33 @@ static void initialize_group_array __P((void));
|
||||
/* A standard error message to use when getcwd() returns NULL. */
|
||||
const char * const bash_getcwd_errstr = N_("getcwd: cannot access parent directories");
|
||||
|
||||
/* Do whatever is necessary to initialize `Posix mode'. */
|
||||
/* Do whatever is necessary to initialize `Posix mode'. This currently
|
||||
modifies the following variables which are controlled via shopt:
|
||||
interactive_comments
|
||||
source_uses_path
|
||||
expand_aliases
|
||||
inherit_errexit
|
||||
print_shift_error
|
||||
|
||||
and the following variables which cannot be user-modified:
|
||||
|
||||
source_searches_cwd
|
||||
|
||||
If we add to the first list, we need to change the table and functions
|
||||
below */
|
||||
|
||||
static struct {
|
||||
int *posix_mode_var;
|
||||
} posix_vars[] =
|
||||
{
|
||||
&interactive_comments,
|
||||
&source_uses_path,
|
||||
&expand_aliases,
|
||||
&inherit_errexit,
|
||||
&print_shift_error,
|
||||
0
|
||||
};
|
||||
|
||||
void
|
||||
posix_initialize (on)
|
||||
int on;
|
||||
@@ -80,6 +106,7 @@ posix_initialize (on)
|
||||
inherit_errexit = 1;
|
||||
source_searches_cwd = 0;
|
||||
print_shift_error = 1;
|
||||
|
||||
}
|
||||
|
||||
/* Things that should be turned on when posix mode is disabled. */
|
||||
@@ -91,6 +118,35 @@ posix_initialize (on)
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
num_posix_options ()
|
||||
{
|
||||
return ((sizeof (posix_vars) / sizeof (posix_vars[0])) - 1);
|
||||
}
|
||||
|
||||
char *
|
||||
get_posix_options (bitmap)
|
||||
char *bitmap;
|
||||
{
|
||||
register int i;
|
||||
|
||||
if (bitmap == 0)
|
||||
bitmap = (char *)xmalloc (num_posix_options ()); /* no trailing NULL */
|
||||
for (i = 0; posix_vars[i].posix_mode_var; i++)
|
||||
bitmap[i] = *(posix_vars[i].posix_mode_var);
|
||||
return bitmap;
|
||||
}
|
||||
|
||||
void
|
||||
set_posix_options (bitmap)
|
||||
const char *bitmap;
|
||||
{
|
||||
register int i;
|
||||
|
||||
for (i = 0; posix_vars[i].posix_mode_var; i++)
|
||||
*(posix_vars[i].posix_mode_var) = bitmap[i];
|
||||
}
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Functions to convert to and from and display non-standard types */
|
||||
|
||||
@@ -297,6 +297,10 @@ extern void xfree __P((void *));
|
||||
/* Declarations for functions defined in general.c */
|
||||
extern void posix_initialize __P((int));
|
||||
|
||||
extern int num_posix_options __P((void));
|
||||
extern char *get_posix_options __P((char *));
|
||||
extern void set_posix_options __P((const char *));
|
||||
|
||||
#if defined (RLIMTYPE)
|
||||
extern RLIMTYPE string_to_rlimtype __P((char *));
|
||||
extern void print_rlimtype __P((RLIMTYPE, int));
|
||||
|
||||
@@ -125,6 +125,20 @@ hash_copy (table, cpdata)
|
||||
return new_table;
|
||||
}
|
||||
|
||||
/* This is the best 32-bit string hash function I found. It's one of the
|
||||
Fowler-Noll-Vo family (FNV-1).
|
||||
|
||||
The magic is in the interesting relationship between the special prime
|
||||
16777619 (2^24 + 403) and 2^32 and 2^8. */
|
||||
|
||||
#define FNV_OFFSET 2166136261
|
||||
#define FNV_PRIME 16777619
|
||||
|
||||
/* If you want to use 64 bits, use
|
||||
FNV_OFFSET 14695981039346656037
|
||||
FNV_PRIMT 1099511628211
|
||||
*/
|
||||
|
||||
/* The `khash' check below requires that strings that compare equally with
|
||||
strcmp hash to the same value. */
|
||||
unsigned int
|
||||
@@ -133,14 +147,9 @@ hash_string (s)
|
||||
{
|
||||
register unsigned int i;
|
||||
|
||||
/* This is the best string hash function I found.
|
||||
|
||||
The magic is in the interesting relationship between the special prime
|
||||
16777619 (2^24 + 403) and 2^32 and 2^8. */
|
||||
|
||||
for (i = 0; *s; s++)
|
||||
for (i = FNV_OFFSET; *s; s++)
|
||||
{
|
||||
i *= 16777619;
|
||||
i *= FNV_PRIME;
|
||||
i ^= *s;
|
||||
}
|
||||
|
||||
|
||||
@@ -300,6 +300,8 @@ static int bgp_delete __P((pid_t));
|
||||
static void bgp_clear __P((void));
|
||||
static int bgp_search __P((pid_t));
|
||||
|
||||
static struct pipeline_saver *alloc_pipeline_saver __P((void));
|
||||
|
||||
static ps_index_t bgp_getindex __P((void));
|
||||
static void bgp_resize __P((void)); /* XXX */
|
||||
|
||||
@@ -453,7 +455,7 @@ discard_last_procsub_child ()
|
||||
discard_pipeline (disposer);
|
||||
}
|
||||
|
||||
struct pipeline_saver *
|
||||
static struct pipeline_saver *
|
||||
alloc_pipeline_saver ()
|
||||
{
|
||||
struct pipeline_saver *ret;
|
||||
@@ -4073,20 +4075,20 @@ notify_of_job_status ()
|
||||
((DEADJOB (job) && IS_FOREGROUND (job) == 0) || STOPPED (job)))
|
||||
continue;
|
||||
|
||||
#if 0
|
||||
/* If job control is disabled, don't print the status messages.
|
||||
Mark dead jobs as notified so that they get cleaned up. If
|
||||
startup_state == 2, we were started to run `-c command', so
|
||||
don't print anything. */
|
||||
if ((job_control == 0 && interactive_shell) || startup_state == 2)
|
||||
#else
|
||||
/* If job control is disabled, don't print the status messages.
|
||||
Mark dead jobs as notified so that they get cleaned up. If
|
||||
startup_state == 2 and subshell_environment has the
|
||||
SUBSHELL_COMSUB bit turned on, we were started to run a command
|
||||
substitution, so don't print anything. */
|
||||
substitution, so don't print anything.
|
||||
Otherwise, if the shell is not interactive, POSIX says that `jobs'
|
||||
is the only way to notify of job status. */
|
||||
#if 1
|
||||
if ((job_control == 0 && interactive_shell) ||
|
||||
(startup_state == 2 && (subshell_environment & SUBSHELL_COMSUB)))
|
||||
#else /* TAG:bash-5.1 */
|
||||
if ((job_control == 0 && interactive_shell) ||
|
||||
(startup_state == 2 && (subshell_environment & SUBSHELL_COMSUB)) ||
|
||||
(startup_state == 2 && posixly_correct && (subshell_environment & SUBSHELL_COMSUB) == 0))
|
||||
#endif
|
||||
{
|
||||
/* POSIX.2 compatibility: if the shell is not interactive,
|
||||
|
||||
@@ -260,7 +260,7 @@ extern int give_terminal_to __P((pid_t, int));
|
||||
extern void run_sigchld_trap __P((int));
|
||||
|
||||
extern int freeze_jobs_list __P((void));
|
||||
extern void unfreeeze_jobs_list __P((void));
|
||||
extern void unfreeze_jobs_list __P((void));
|
||||
extern void set_jobs_list_frozen __P((int));
|
||||
extern int set_job_control __P((int));
|
||||
extern void without_job_control __P((void));
|
||||
|
||||
+10
-1
@@ -384,7 +384,7 @@ BRACKMATCH (p, test, flags)
|
||||
{
|
||||
register CHAR cstart, cend, c;
|
||||
register int not; /* Nonzero if the sense of the character class is inverted. */
|
||||
int brcnt, brchr, forcecoll;
|
||||
int brcnt, brchr, forcecoll, isrange;
|
||||
INT pc;
|
||||
CHAR *savep;
|
||||
U_CHAR orig_test;
|
||||
@@ -519,6 +519,7 @@ BRACKMATCH (p, test, flags)
|
||||
}
|
||||
|
||||
cstart = cend = FOLD (cstart);
|
||||
isrange = 0;
|
||||
|
||||
/* POSIX.2 2.8.3.1.2 says: `An expression containing a `[' that
|
||||
is not preceded by a backslash and is not part of a bracket
|
||||
@@ -573,10 +574,18 @@ BRACKMATCH (p, test, flags)
|
||||
c = FOLD (c);
|
||||
continue;
|
||||
}
|
||||
isrange = 1;
|
||||
}
|
||||
|
||||
#if 0 /* TAG: bash-5.1 */
|
||||
if (isrange == 0 && test == cstart)
|
||||
goto matched;
|
||||
if (isrange && RANGECMP (test, cstart, forcecoll) >= 0 && RANGECMP (test, cend, forcecoll) <= 0)
|
||||
goto matched;
|
||||
#else
|
||||
if (RANGECMP (test, cstart, forcecoll) >= 0 && RANGECMP (test, cend, forcecoll) <= 0)
|
||||
goto matched;
|
||||
#endif
|
||||
|
||||
if (c == L(']'))
|
||||
break;
|
||||
|
||||
+68
-2
@@ -30,6 +30,12 @@
|
||||
#include "shmbutil.h"
|
||||
#include "xmalloc.h"
|
||||
|
||||
#include <errno.h>
|
||||
|
||||
#if !defined (errno)
|
||||
extern int errno;
|
||||
#endif
|
||||
|
||||
/* First, compile `sm_loop.c' for single-byte characters. */
|
||||
#define CHAR unsigned char
|
||||
#define U_CHAR unsigned char
|
||||
@@ -82,7 +88,7 @@ rangecmp (c1, c2, forcecoll)
|
||||
|
||||
if ((ret = strcoll (s1, s2)) != 0)
|
||||
return ret;
|
||||
return (c1 - c2);
|
||||
return (c1 - c2); /* impose total ordering */
|
||||
}
|
||||
#else /* !HAVE_STRCOLL */
|
||||
# define rangecmp(c1, c2, f) ((int)(c1) - (int)(c2))
|
||||
@@ -282,6 +288,41 @@ is_cclass (c, name)
|
||||
|
||||
extern char *mbsmbchar __P((const char *));
|
||||
|
||||
#if FNMATCH_EQUIV_FALLBACK
|
||||
/* We don't include <fnmatch.h> in order to avoid namespace collisions; the
|
||||
internal strmatch still uses the FNM_ constants. */
|
||||
extern int fnmatch (const char *, const char *, int);
|
||||
|
||||
/* Construct a string w1 = "c1" and a pattern w2 = "[[=c2=]]" and pass them
|
||||
to fnmatch to see if wide characters c1 and c2 collate as members of the
|
||||
same equivalence class. We can't really do this portably any other way */
|
||||
static int
|
||||
_fnmatch_fallback_wc (c1, c2)
|
||||
wchar_t c1, c2; /* string char, patchar */
|
||||
{
|
||||
char w1[MB_LEN_MAX+1]; /* string */
|
||||
char w2[MB_LEN_MAX+8]; /* constructed pattern */
|
||||
int l1, l2;
|
||||
|
||||
l1 = wctomb (w1, c1);
|
||||
if (l1 == -1)
|
||||
return (2);
|
||||
w1[l1] = '\0';
|
||||
|
||||
/* reconstruct the pattern */
|
||||
w2[0] = w2[1] = '[';
|
||||
w2[2] = '=';
|
||||
l2 = wctomb (w2+3, c2);
|
||||
if (l2 == -1)
|
||||
return (2);
|
||||
w2[l2+3] = '=';
|
||||
w2[l2+4] = w2[l2+5] = ']';
|
||||
w2[l2+6] = '\0';
|
||||
|
||||
return (fnmatch ((const char *)w2, (const char *)w1, 0));
|
||||
}
|
||||
#endif
|
||||
|
||||
static int
|
||||
rangecmp_wc (c1, c2, forcecoll)
|
||||
wint_t c1, c2;
|
||||
@@ -289,6 +330,7 @@ rangecmp_wc (c1, c2, forcecoll)
|
||||
{
|
||||
static wchar_t s1[2] = { L' ', L'\0' };
|
||||
static wchar_t s2[2] = { L' ', L'\0' };
|
||||
int r, oerrno;
|
||||
|
||||
if (c1 == c2)
|
||||
return 0;
|
||||
@@ -299,14 +341,38 @@ rangecmp_wc (c1, c2, forcecoll)
|
||||
s1[0] = c1;
|
||||
s2[0] = c2;
|
||||
|
||||
#if 0 /* TAG:bash-5.1 */
|
||||
/* We impose a total ordering here by returning c1-c2 if wcscoll returns 0,
|
||||
as we do above in the single-byte case. If we do this, we can no longer
|
||||
use this code in collequiv_wc */
|
||||
if ((r = wcscoll (s1, s2)) != 0)
|
||||
return r;
|
||||
return ((int)(c1 - c2)); /* impose total ordering */
|
||||
#else
|
||||
return (wcscoll (s1, s2));
|
||||
#endif
|
||||
}
|
||||
|
||||
/* Returns non-zero on success */
|
||||
static int
|
||||
collequiv_wc (c, equiv)
|
||||
wint_t c, equiv;
|
||||
{
|
||||
return (c == equiv);
|
||||
wchar_t s, p;
|
||||
|
||||
if (rangecmp_wc (c, equiv, 1) == 0)
|
||||
return 1;
|
||||
#if FNMATCH_EQUIV_FALLBACK
|
||||
/* We check explicitly for success (fnmatch returns 0) to avoid problems if
|
||||
our local definition of FNM_NOMATCH (strmatch.h) doesn't match the
|
||||
system's (fnmatch.h). We don't care about error return values here. */
|
||||
|
||||
s = c;
|
||||
p = equiv;
|
||||
return (_fnmatch_fallback_wc (s, p) == 0);
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
/* Helper function for collating symbol. */
|
||||
|
||||
@@ -720,19 +720,22 @@ Return the name matching @var{keymap}. @var{name} is one which would
|
||||
be supplied in a @code{set keymap} inputrc line (@pxref{Readline Init File}).
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun void rl_set_keymap (const char *name, Keymap keymap)
|
||||
@deftypefun int rl_set_keymap_name (const char *name, Keymap keymap)
|
||||
Set the name of @var{keymap}. This name will then be "registered" and
|
||||
available for use in a @code{set keymap} inputrc directive
|
||||
@pxref{Readline Init File}).
|
||||
The @var{name} may not be one of Readline's builtin names;
|
||||
The @var{name} may not be one of Readline's builtin keymap names;
|
||||
you may not add a different name for one of Readline's builtin keymaps.
|
||||
Readline will make a copy of @var{name}.
|
||||
You may replace the name associated with a given keymap by calling this
|
||||
function two or more times with the same @var{keymap} argument.
|
||||
You can associate a registered name with a new keymap by calling this
|
||||
function two or more times with the same @var{name} argument.
|
||||
function more than once with the same @var{keymap} argument.
|
||||
You may associate a registered @var{name} with a new keymap by calling this
|
||||
function more than once with the same @var{name} argument.
|
||||
There is no way to remove a named keymap once the name has been
|
||||
registered.
|
||||
Readline will make a copy of @var{name}.
|
||||
The return value is greater than zero unless @var{name} is one of
|
||||
Readline's builtin keymap names or @var{keymap} is one of Readline's
|
||||
builtin keymaps.
|
||||
@end deftypefun
|
||||
|
||||
@node Binding Keys
|
||||
@@ -2143,6 +2146,8 @@ character (@samp{\0}) prevents anything being appended automatically.
|
||||
This can be changed in application-specific completion functions to
|
||||
provide the ``most sensible word separator character'' according to
|
||||
an application-specific command line syntax specification.
|
||||
It is set to the default before any application-specific completion function
|
||||
is called, and may only be changed within such a function.
|
||||
@end deftypevar
|
||||
|
||||
@deftypevar int rl_completion_suppress_append
|
||||
|
||||
@@ -4,7 +4,7 @@ Copyright (C) 1988-2018 Free Software Foundation, Inc.
|
||||
|
||||
@set EDITION 8.0
|
||||
@set VERSION 8.0
|
||||
@set UPDATED 18 September 2018
|
||||
@set UPDATED-MONTH September 2018
|
||||
@set UPDATED 30 November 2018
|
||||
@set UPDATED-MONTH November 2018
|
||||
|
||||
@set LASTCHANGE Tue Sep 18 13:08:12 EDT 2018
|
||||
@set LASTCHANGE Fri Nov 30 22:50:53 EST 2018
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@ int
|
||||
strncasecmp (string1, string2, count)
|
||||
const char *string1;
|
||||
const char *string2;
|
||||
int count;
|
||||
size_t count;
|
||||
{
|
||||
register const char *s1;
|
||||
register const char *s2;
|
||||
|
||||
@@ -418,7 +418,8 @@ inputunit: simple_list simple_list_terminator
|
||||
/* EOF after an error. Do ignoreeof or not. Really
|
||||
only interesting in non-interactive shells */
|
||||
global_command = (COMMAND *)NULL;
|
||||
last_command_exit_value = 1;
|
||||
if (last_command_exit_value == 0)
|
||||
last_command_exit_value = EX_BADUSAGE; /* force error return */
|
||||
handle_eof_input_unit ();
|
||||
if (interactive && parse_and_execute_level == 0)
|
||||
{
|
||||
@@ -894,6 +895,16 @@ select_command: SELECT WORD newline_list DO list DONE
|
||||
$$ = make_select_command ($2, REVERSE_LIST ($5, WORD_LIST *), $9, word_lineno[word_top]);
|
||||
if (word_top > 0) word_top--;
|
||||
}
|
||||
| SELECT WORD newline_list IN list_terminator newline_list DO compound_list DONE
|
||||
{
|
||||
$$ = make_select_command ($2, (WORD_LIST *)NULL, $8, word_lineno[word_top]);
|
||||
if (word_top > 0) word_top--;
|
||||
}
|
||||
| SELECT WORD newline_list IN list_terminator newline_list '{' compound_list '}'
|
||||
{
|
||||
$$ = make_select_command ($2, (WORD_LIST *)NULL, $8, word_lineno[word_top]);
|
||||
if (word_top > 0) word_top--;
|
||||
}
|
||||
;
|
||||
|
||||
case_command: CASE WORD newline_list IN newline_list ESAC
|
||||
@@ -3020,7 +3031,11 @@ special_case_tokens (tokstr)
|
||||
{
|
||||
/* Posix grammar rule 6 */
|
||||
if ((last_read_token == WORD) &&
|
||||
#if defined (SELECT_COMMAND)
|
||||
((token_before_that == FOR) || (token_before_that == CASE) || (token_before_that == SELECT)) &&
|
||||
#else
|
||||
((token_before_that == FOR) || (token_before_that == CASE)) &&
|
||||
#endif
|
||||
(tokstr[0] == 'i' && tokstr[1] == 'n' && tokstr[2] == 0))
|
||||
{
|
||||
if (token_before_that == CASE)
|
||||
|
||||
+4
-4
@@ -1,8 +1,8 @@
|
||||
/* A Bison parser, made by GNU Bison 3.0.4. */
|
||||
/* A Bison parser, made by GNU Bison 3.0.5. */
|
||||
|
||||
/* Bison interface for Yacc-like parsers in C
|
||||
|
||||
Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
|
||||
Copyright (C) 1984, 1989-1990, 2000-2015, 2018 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -148,7 +148,7 @@ extern int yydebug;
|
||||
|
||||
union YYSTYPE
|
||||
{
|
||||
#line 328 "./parse.y" /* yacc.c:1909 */
|
||||
#line 328 "/usr/homes/chet/src/bash/src/parse.y" /* yacc.c:1910 */
|
||||
|
||||
WORD_DESC *word; /* the word that we read. */
|
||||
int number; /* the number that we read. */
|
||||
@@ -158,7 +158,7 @@ union YYSTYPE
|
||||
ELEMENT element;
|
||||
PATTERN_LIST *pattern;
|
||||
|
||||
#line 162 "y.tab.h" /* yacc.c:1909 */
|
||||
#line 162 "y.tab.h" /* yacc.c:1910 */
|
||||
};
|
||||
|
||||
typedef union YYSTYPE YYSTYPE;
|
||||
|
||||
+205
-199
File diff suppressed because it is too large
Load Diff
Binary file not shown.
+205
-193
File diff suppressed because it is too large
Load Diff
Binary file not shown.
+205
-193
File diff suppressed because it is too large
Load Diff
Binary file not shown.
+258
-250
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user