mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-06-26 23:33:08 +02:00
next set of documentation updates (job control); fix read timeout problem; fix bash-source-fullpath default; brace expansion integer overflow fix; fix for help output for loadable builtins
This commit is contained in:
@@ -10307,5 +10307,56 @@ lib/readline/doc/hsuser.texi,lib/readline/doc/history.3
|
||||
- next set of updates for consistency between formats, update language,
|
||||
fix formatting conventions
|
||||
|
||||
10/11
|
||||
-----
|
||||
lib/readline/doc/rltech.texi,lib/readline/doc/hstech.texi
|
||||
- next set of updates for consistency between formats, update language,
|
||||
fix formatting conventions
|
||||
|
||||
10/12
|
||||
-----
|
||||
Makefile.in,builtins/Makefile.in
|
||||
- update dependencies on readline, history include files
|
||||
|
||||
builtins/shopt.def
|
||||
- update bash_source_fullpath reset to use new default
|
||||
|
||||
configure.ac
|
||||
- update to use the right option name for bash-source-fullpath-default
|
||||
Report and patch from Grisha Levit <grishalevit@gmail.com>
|
||||
|
||||
braces.c
|
||||
- mkseq: fix loop condition to avoid integer overflow
|
||||
Report and patch from Grisha Levit <grishalevit@gmail.com>
|
||||
|
||||
builtins/help.def
|
||||
- show_desc: don't assume that long_doc[0] ends with a newline,
|
||||
just add one manually when we hit a newline or NULL
|
||||
Report and patch from Grisha Levit <grishalevit@gmail.com>
|
||||
|
||||
builtins/read.def
|
||||
- read_builtin: don't check the timeout after breaking out of the
|
||||
character read loop unless we didn't read anything (i == 0) and
|
||||
the last read return EOF or error
|
||||
- read_builtin: move check_read_timeout call to the end of the read
|
||||
loop, after we check for the delimiter and whether or not we've
|
||||
read the right number of characters, so we always return any
|
||||
valid data
|
||||
Report from Thomas Oettli <thomas.oettli@sfs.com>
|
||||
|
||||
10/14
|
||||
-----
|
||||
jobs.c
|
||||
- wait_for_any_job: in posix mode, take any terminated pid from bgpids
|
||||
before waiting for a running job to terminate
|
||||
Inspired by report from Zachary Santer <zsanter@gmail.com>
|
||||
|
||||
10/14
|
||||
-----
|
||||
doc/bash.1,doc/bashref.texi
|
||||
- next set of updates for consistency between formats, update language,
|
||||
fix formatting conventions (job control section)
|
||||
|
||||
doc/bash.1,doc/bashref.texi,lib/readline/doc/readline.3,lib/readline/doc/rluser.texi
|
||||
- minor wording updates and typo fixes from
|
||||
G. Branden Robinson <g.branden.robinson@gmail.com>
|
||||
|
||||
+15
-4
@@ -330,6 +330,8 @@ HISTORY_LIBRARY = $(HIST_LIBDIR)/libhistory.a
|
||||
HISTORY_LDFLAGS = -L$(HIST_LIBDIR)
|
||||
HISTORY_DEP = @HISTORY_DEP@
|
||||
|
||||
HIST_INCLUDEDIR = @HIST_INCLUDEDIR@
|
||||
|
||||
# The source, object and documentation of the history library.
|
||||
HISTORY_SOURCE = $(HIST_LIBSRC)/history.c $(HIST_LIBSRC)/histexpand.c \
|
||||
$(HIST_LIBSRC)/histsearch.c $(HIST_LIBSRC)/histfile.c \
|
||||
@@ -1242,7 +1244,7 @@ shell.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h arr
|
||||
shell.o: quit.h ${BASHINCDIR}/maxpath.h unwind_prot.h dispose_cmd.h
|
||||
shell.o: make_cmd.h subst.h sig.h pathnames.h externs.h parser.h
|
||||
shell.o: flags.h trap.h mailcheck.h builtins.h $(DEFSRC)/common.h
|
||||
shell.o: jobs.h siglist.h input.h execute_cmd.h findcmd.h bashhist.h bashline.h
|
||||
shell.o: jobs.h siglist.h input.h execute_cmd.h findcmd.h bashhist.h bashline.h
|
||||
shell.o: ${GLOB_LIBSRC}/strmatch.h ${BASHINCDIR}/posixtime.h ${BASHINCDIR}/posixwait.h
|
||||
shell.o: ${BASHINCDIR}/ocache.h ${BASHINCDIR}/chartypes.h assoc.h alias.h
|
||||
shell.o: $(BASHINCDIR)/unlocked-io.h
|
||||
@@ -1457,13 +1459,18 @@ pcomplete.o: $(RL_LIBSRC)/keymaps.h $(RL_LIBSRC)/rlstdc.h
|
||||
pcomplete.o: $(RL_LIBSRC)/chardefs.h $(RL_LIBSRC)/readline.h
|
||||
pcomplete.o: $(RL_LIBSRC)/rltypedefs.h ${RL_LIBSRC}/rlmbutil.h
|
||||
|
||||
shell.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
bashhist.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
bashline.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
bracecomp.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
error.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
eval.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
execute_cmd.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
flags.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
variables.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
subst.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
bashline.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
bashhist.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
y.tab.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
pcomplete.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
shell.o: $(HIST_LIBSRC)/history.h $(HIST_LIBSRC)/rlstdc.h
|
||||
|
||||
bashline.o: $(TILDE_LIBSRC)/tilde.h
|
||||
bracecomp.o: $(TILDE_LIBSRC)/tilde.h
|
||||
@@ -1815,9 +1822,13 @@ builtins/umask.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/bind.o: $(RL_LIBSRC)/chardefs.h $(RL_LIBSRC)/readline.h
|
||||
builtins/bind.o: $(RL_LIBSRC)/keymaps.h $(RL_LIBSRC)/rlstdc.h
|
||||
|
||||
builtins/common.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
builtins/evalfile.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
builtins/evalstring.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
builtins/bind.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
builtins/fc.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
builtins/history.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
builtins/shopt.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
|
||||
builtins/common.o: $(TILDE_LIBSRC)/tilde.h
|
||||
builtins/cd.o: $(TILDE_LIBSRC)/tilde.h
|
||||
|
||||
@@ -444,9 +444,12 @@ mkseq (intmax_t start, intmax_t end, intmax_t incr, int type, size_t width)
|
||||
return ((char **)NULL);
|
||||
}
|
||||
|
||||
if (i >= nelem - 1)
|
||||
break;
|
||||
|
||||
n += incr;
|
||||
}
|
||||
while (i < nelem - 1);
|
||||
while (1);
|
||||
|
||||
result[i] = (char *)0;
|
||||
return (result);
|
||||
|
||||
+31
-1
@@ -77,6 +77,9 @@ BASHINCDIR = ${topdir}/include
|
||||
|
||||
RL_INCLUDEDIR = @RL_INCLUDEDIR@
|
||||
|
||||
HIST_LIBSRC = ${topdir}/lib/readline
|
||||
RL_LIBSRC = ${topdir}/lib/readline
|
||||
|
||||
INTL_LIBSRC = ${topdir}/lib/intl
|
||||
INTL_BUILDDIR = ${LIBBUILD}/intl
|
||||
INTL_LIBDIR = ${INTL_BUILDDIR}
|
||||
@@ -683,7 +686,34 @@ mapfile.o: $(topdir)/subst.h $(topdir)/externs.h $(BASHINCDIR)/maxpath.h
|
||||
mapfile.o: $(topdir)/shell.h $(topdir)/syntax.h $(topdir)/variables.h $(topdir)/conftypes.h
|
||||
mapfile.o: $(topdir)/arrayfunc.h ../pathnames.h
|
||||
|
||||
#bind.o: $(RL_LIBSRC)chardefs.h $(RL_LIBSRC)readline.h $(RL_LIBSRC)keymaps.h
|
||||
bind.o: $(RL_LIBSRC)/rlconf.h
|
||||
bind.o: $(RL_LIBSRC)/keymaps.h $(RL_LIBSRC)/rlstdc.h
|
||||
bind.o: $(RL_LIBSRC)/chardefs.h $(RL_LIBSRC)/readline.h
|
||||
bind.o: $(RL_LIBSRC)/rltypedefs.h ${RL_LIBSRC}/rlmbutil.h
|
||||
complete.o: $(RL_LIBSRC)/rlconf.h
|
||||
complete.o: $(RL_LIBSRC)/keymaps.h $(RL_LIBSRC)/rlstdc.h
|
||||
complete.o: $(RL_LIBSRC)/chardefs.h $(RL_LIBSRC)/readline.h
|
||||
complete.o: $(RL_LIBSRC)/rltypedefs.h ${RL_LIBSRC}/rlmbutil.h
|
||||
history.o: $(RL_LIBSRC)/rlconf.h
|
||||
history.o: $(RL_LIBSRC)/keymaps.h $(RL_LIBSRC)/rlstdc.h
|
||||
history.o: $(RL_LIBSRC)/chardefs.h $(RL_LIBSRC)/readline.h
|
||||
history.o: $(RL_LIBSRC)/rltypedefs.h ${RL_LIBSRC}/rlmbutil.h
|
||||
read.o: $(RL_LIBSRC)/rlconf.h
|
||||
read.o: $(RL_LIBSRC)/keymaps.h $(RL_LIBSRC)/rlstdc.h
|
||||
read.o: $(RL_LIBSRC)/chardefs.h $(RL_LIBSRC)/readline.h
|
||||
read.o: $(RL_LIBSRC)/rltypedefs.h ${RL_LIBSRC}/rlmbutil.h
|
||||
set.o: $(RL_LIBSRC)/rlconf.h
|
||||
set.o: $(RL_LIBSRC)/keymaps.h $(RL_LIBSRC)/rlstdc.h
|
||||
set.o: $(RL_LIBSRC)/chardefs.h $(RL_LIBSRC)/readline.h
|
||||
set.o: $(RL_LIBSRC)/rltypedefs.h ${RL_LIBSRC}/rlmbutil.h
|
||||
|
||||
common.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
evalfile.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
evalstring.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
bind.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
fc.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
history.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
shopt.o: $(HIST_LIBSRC)/history.h $(RL_LIBSRC)/rlstdc.h
|
||||
|
||||
# libintl dependencies
|
||||
bind.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
|
||||
+4
-6
@@ -265,12 +265,10 @@ show_desc (char *name, int i)
|
||||
line = doc ? doc[0] : (char *)NULL;
|
||||
|
||||
printf ("%s - ", name);
|
||||
for (j = 0; line && line[j]; j++)
|
||||
{
|
||||
putchar (line[j]);
|
||||
if (line[j] == '\n')
|
||||
break;
|
||||
}
|
||||
/* Don't assume LINE ends with a newline. */
|
||||
for (j = 0; line && line[j] && line[j] != '\n'; j++)
|
||||
putchar (line[j]);
|
||||
putchar ('\n');
|
||||
|
||||
fflush (stdout);
|
||||
|
||||
|
||||
+6
-2
@@ -843,7 +843,6 @@ read_builtin (WORD_LIST *list)
|
||||
|
||||
add_char:
|
||||
input_string[i++] = c;
|
||||
check_read_timeout ();
|
||||
|
||||
#if defined (HANDLE_MULTIBYTE)
|
||||
/* XXX - what if C == 127? Can DEL introduce a multibyte sequence? */
|
||||
@@ -878,6 +877,8 @@ add_char:
|
||||
|
||||
if (nchars > 0 && nr >= nchars)
|
||||
break;
|
||||
|
||||
check_read_timeout ();
|
||||
}
|
||||
/* Back up over trailing CTLESC if the input ends with an unescaped
|
||||
backslash */
|
||||
@@ -891,7 +892,10 @@ add_char:
|
||||
saw_escape = 0; /* Avoid dequoting bare CTLNUL */
|
||||
|
||||
input_string[i] = '\0';
|
||||
check_read_timeout ();
|
||||
/* Don't check the timeout unless we didn't read anything and zread returned
|
||||
EOF or error. */
|
||||
if (i == 0 && retval <= 0)
|
||||
check_read_timeout ();
|
||||
|
||||
#if defined (READLINE)
|
||||
if (edit)
|
||||
|
||||
+1
-1
@@ -376,10 +376,10 @@ reset_shopt_options (void)
|
||||
glob_ignore_case = match_ignore_case = 0;
|
||||
print_shift_error = 0;
|
||||
source_uses_path = promptvars = 1;
|
||||
bash_source_fullpath = 0;
|
||||
varassign_redir_autoclose = 0;
|
||||
singlequote_translations = 0;
|
||||
patsub_replacement = PATSUB_REPLACE_DEFAULT;
|
||||
bash_source_fullpath = BASH_SOURCE_FULLPATH_DEFAULT;
|
||||
|
||||
#if defined (JOB_CONTROL)
|
||||
check_jobs_at_exit = 0;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#! /bin/sh
|
||||
# From configure.ac for Bash 5.3, version 5.069.
|
||||
# From configure.ac for Bash 5.3, version 5.071.
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.72 for bash 5.3-beta.
|
||||
#
|
||||
@@ -748,6 +748,7 @@ INSTALL_DATA
|
||||
INSTALL_SCRIPT
|
||||
INSTALL_PROGRAM
|
||||
TILDE_LIB
|
||||
HIST_INCLUDEDIR
|
||||
HIST_LIBDIR
|
||||
HISTORY_DEP
|
||||
HISTORY_LIB
|
||||
@@ -3458,7 +3459,7 @@ opt_function_import=yes
|
||||
opt_dev_fd_stat_broken=no
|
||||
opt_alt_array_impl=no
|
||||
opt_translatable_strings=yes
|
||||
opt_bash_source_fullpath=no
|
||||
opt_bash_source_fullpath_default=no
|
||||
|
||||
ARRAY_O=array.o
|
||||
|
||||
@@ -3484,7 +3485,7 @@ if test $opt_minimal_config = yes; then
|
||||
opt_casemod_attrs=no opt_casemod_expansions=no opt_extglob_default=no
|
||||
opt_translatable_strings=no
|
||||
opt_globascii_default=yes
|
||||
opt_bash_source_fullpath=no
|
||||
opt_bash_source_fullpath_default=no
|
||||
fi
|
||||
|
||||
# Check whether --enable-alias was given.
|
||||
@@ -5950,6 +5951,8 @@ if test $opt_readline = yes; then
|
||||
else
|
||||
RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
|
||||
READLINE_DEP='$(READLINE_LIBRARY)'
|
||||
# for dependencies
|
||||
RL_INCLUDEDIR='$(RL_LIBDIR)'
|
||||
# section for OS versions that ship an older/broken version of
|
||||
# readline as a standard dynamic library and don't allow a
|
||||
# static version specified as -llibname to override the
|
||||
@@ -5962,6 +5965,7 @@ if test $opt_readline = yes; then
|
||||
else
|
||||
RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
|
||||
READLINE_LIB= READLINE_DEP=
|
||||
RL_INCLUDEDIR=
|
||||
fi
|
||||
if test $opt_history = yes || test $opt_bang_history = yes; then
|
||||
if test $opt_history = yes; then
|
||||
@@ -5987,6 +5991,8 @@ if test $opt_history = yes || test $opt_bang_history = yes; then
|
||||
else
|
||||
HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
|
||||
HISTORY_DEP='$(HISTORY_LIBRARY)'
|
||||
# for dependencies
|
||||
HIST_INCLUDEDIR='$(HIST_LIBDIR)'
|
||||
# section for OS versions that ship an older version of
|
||||
# readline as a standard dynamic library and don't allow a
|
||||
# static version specified as -llibname to override the
|
||||
@@ -5999,6 +6005,7 @@ if test $opt_history = yes || test $opt_bang_history = yes; then
|
||||
else
|
||||
HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
|
||||
HISTORY_LIB= HISTORY_DEP=
|
||||
HIST_INCLUDEDIR=
|
||||
fi
|
||||
|
||||
|
||||
@@ -6012,6 +6019,7 @@ fi
|
||||
|
||||
|
||||
|
||||
|
||||
# Find a good install program. We prefer a C program (faster),
|
||||
# so one script is as good as another. But avoid the broken or
|
||||
# incompatible versions:
|
||||
@@ -9218,8 +9226,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \
|
||||
LIBS=$save_LIBS
|
||||
test $gl_pthread_api = yes && break
|
||||
done
|
||||
echo "$as_me:9221: gl_pthread_api=$gl_pthread_api" >&5
|
||||
echo "$as_me:9222: LIBPTHREAD=$LIBPTHREAD" >&5
|
||||
echo "$as_me:9229: gl_pthread_api=$gl_pthread_api" >&5
|
||||
echo "$as_me:9230: LIBPTHREAD=$LIBPTHREAD" >&5
|
||||
|
||||
gl_pthread_in_glibc=no
|
||||
# On Linux with glibc >= 2.34, libc contains the fully functional
|
||||
@@ -9245,7 +9253,7 @@ rm -rf conftest*
|
||||
|
||||
;;
|
||||
esac
|
||||
echo "$as_me:9248: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
|
||||
echo "$as_me:9256: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
|
||||
|
||||
# Test for libpthread by looking for pthread_kill. (Not pthread_self,
|
||||
# since it is defined as a macro on OSF/1.)
|
||||
@@ -9423,7 +9431,7 @@ fi
|
||||
|
||||
fi
|
||||
fi
|
||||
echo "$as_me:9426: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
|
||||
echo "$as_me:9434: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
|
||||
fi
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5
|
||||
printf %s "checking whether POSIX threads API is available... " >&6; }
|
||||
@@ -9670,8 +9678,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \
|
||||
LIBS=$save_LIBS
|
||||
test $gl_pthread_api = yes && break
|
||||
done
|
||||
echo "$as_me:9673: gl_pthread_api=$gl_pthread_api" >&5
|
||||
echo "$as_me:9674: LIBPTHREAD=$LIBPTHREAD" >&5
|
||||
echo "$as_me:9681: gl_pthread_api=$gl_pthread_api" >&5
|
||||
echo "$as_me:9682: LIBPTHREAD=$LIBPTHREAD" >&5
|
||||
|
||||
gl_pthread_in_glibc=no
|
||||
# On Linux with glibc >= 2.34, libc contains the fully functional
|
||||
@@ -9697,7 +9705,7 @@ rm -rf conftest*
|
||||
|
||||
;;
|
||||
esac
|
||||
echo "$as_me:9700: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
|
||||
echo "$as_me:9708: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
|
||||
|
||||
# Test for libpthread by looking for pthread_kill. (Not pthread_self,
|
||||
# since it is defined as a macro on OSF/1.)
|
||||
@@ -9875,7 +9883,7 @@ fi
|
||||
|
||||
fi
|
||||
fi
|
||||
echo "$as_me:9878: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
|
||||
echo "$as_me:9886: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
|
||||
fi
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5
|
||||
printf %s "checking whether POSIX threads API is available... " >&6; }
|
||||
|
||||
+10
-3
@@ -21,7 +21,7 @@ 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.3, version 5.069])dnl
|
||||
AC_REVISION([for Bash 5.3, version 5.071])dnl
|
||||
|
||||
define(bashvers, 5.3)
|
||||
define(relstatus, beta)
|
||||
@@ -186,7 +186,7 @@ opt_function_import=yes
|
||||
opt_dev_fd_stat_broken=no
|
||||
opt_alt_array_impl=no
|
||||
opt_translatable_strings=yes
|
||||
opt_bash_source_fullpath=no
|
||||
opt_bash_source_fullpath_default=no
|
||||
|
||||
dnl modified by alternate array implementation option
|
||||
ARRAY_O=array.o
|
||||
@@ -212,7 +212,7 @@ if test $opt_minimal_config = yes; then
|
||||
opt_casemod_attrs=no opt_casemod_expansions=no opt_extglob_default=no
|
||||
opt_translatable_strings=no
|
||||
opt_globascii_default=yes
|
||||
opt_bash_source_fullpath=no
|
||||
opt_bash_source_fullpath_default=no
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE(alias, AS_HELP_STRING([--enable-alias], [enable shell aliases]), opt_alias=$enableval)
|
||||
@@ -622,6 +622,8 @@ if test $opt_readline = yes; then
|
||||
else
|
||||
RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
|
||||
READLINE_DEP='$(READLINE_LIBRARY)'
|
||||
# for dependencies
|
||||
RL_INCLUDEDIR='$(RL_LIBDIR)'
|
||||
# section for OS versions that ship an older/broken version of
|
||||
# readline as a standard dynamic library and don't allow a
|
||||
# static version specified as -llibname to override the
|
||||
@@ -634,6 +636,7 @@ if test $opt_readline = yes; then
|
||||
else
|
||||
RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
|
||||
READLINE_LIB= READLINE_DEP=
|
||||
RL_INCLUDEDIR=
|
||||
fi
|
||||
if test $opt_history = yes || test $opt_bang_history = yes; then
|
||||
if test $opt_history = yes; then
|
||||
@@ -657,6 +660,8 @@ if test $opt_history = yes || test $opt_bang_history = yes; then
|
||||
else
|
||||
HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
|
||||
HISTORY_DEP='$(HISTORY_LIBRARY)'
|
||||
# for dependencies
|
||||
HIST_INCLUDEDIR='$(HIST_LIBDIR)'
|
||||
# section for OS versions that ship an older version of
|
||||
# readline as a standard dynamic library and don't allow a
|
||||
# static version specified as -llibname to override the
|
||||
@@ -669,6 +674,7 @@ if test $opt_history = yes || test $opt_bang_history = yes; then
|
||||
else
|
||||
HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
|
||||
HISTORY_LIB= HISTORY_DEP=
|
||||
HIST_INCLUDEDIR=
|
||||
fi
|
||||
AC_SUBST(READLINE_LIB)
|
||||
AC_SUBST(READLINE_DEP)
|
||||
@@ -678,6 +684,7 @@ AC_SUBST(RL_INCLUDE)
|
||||
AC_SUBST(HISTORY_LIB)
|
||||
AC_SUBST(HISTORY_DEP)
|
||||
AC_SUBST(HIST_LIBDIR)
|
||||
AC_SUBST(HIST_INCLUDEDIR)
|
||||
AC_SUBST(TILDE_LIB)
|
||||
|
||||
dnl END READLINE and HISTORY LIBRARY SECTION
|
||||
|
||||
+1194
-1167
File diff suppressed because it is too large
Load Diff
+177
-127
@@ -5,14 +5,14 @@
|
||||
.\" Case Western Reserve University
|
||||
.\" chet.ramey@case.edu
|
||||
.\"
|
||||
.\" Last Change: Thu Oct 10 16:33:40 EDT 2024
|
||||
.\" Last Change: Mon Oct 14 11:41:21 EDT 2024
|
||||
.\"
|
||||
.\" bash_builtins, strip all but Built-Ins section
|
||||
.\" avoid a warning about an undefined register
|
||||
.\" .if !rzY .nr zY 0
|
||||
.if \n(zZ=1 .ig zZ
|
||||
.if \n(zY=1 .ig zY
|
||||
.TH BASH 1 "2024 October 10" "GNU Bash 5.3"
|
||||
.TH BASH 1 "2024 October 14" "GNU Bash 5.3"
|
||||
.\"
|
||||
.ie \n(.g \{\
|
||||
.ds ' \(aq
|
||||
@@ -498,7 +498,7 @@ One of the following:
|
||||
.if n \fB| & ; ( ) < > space tab newline\fP
|
||||
.RE
|
||||
.TP
|
||||
.B control operator
|
||||
.B "control operator"
|
||||
A \fItoken\fP that performs a control function.
|
||||
It is one of the following symbols:
|
||||
.RS
|
||||
@@ -616,7 +616,7 @@ is executed in a \fIsubshell\fP, which is a
|
||||
separate process.
|
||||
See
|
||||
.SM
|
||||
\fBCOMMAND EXECUTION ENVIRONMENT\fP
|
||||
.B "COMMAND EXECUTION ENVIRONMENT"
|
||||
for a description of subshells and a subshell environment.
|
||||
If the \fBlastpipe\fP option is enabled using the \fBshopt\fP builtin
|
||||
(see the description of \fBshopt\fP below),
|
||||
@@ -698,7 +698,7 @@ newline in place of a semicolon.
|
||||
(\fIlist\fP)
|
||||
\fIlist\fP is executed in a subshell (see
|
||||
.SM
|
||||
\fBCOMMAND EXECUTION ENVIRONMENT\fP
|
||||
.B "COMMAND EXECUTION ENVIRONMENT"
|
||||
below for a description of a subshell environment).
|
||||
Variable assignments and builtin
|
||||
commands that affect the shell's environment do not remain in effect
|
||||
@@ -932,7 +932,7 @@ it against each \fIpattern\fP in turn,
|
||||
proceeding from first to last,
|
||||
using the matching rules
|
||||
described under
|
||||
.B Pattern Matching
|
||||
.B "Pattern Matching"
|
||||
below.
|
||||
A pattern list is a set of one or more patterns separated by \|,
|
||||
and the ) operator terminates the pattern list.
|
||||
@@ -1140,7 +1140,7 @@ represent itself.
|
||||
When the command history expansion facilities are being used
|
||||
(see
|
||||
.SM
|
||||
.B HISTORY EXPANSION
|
||||
.B "HISTORY EXPANSION"
|
||||
below), the
|
||||
\fIhistory expansion\fP character, usually \fB!\fP, must be quoted
|
||||
to prevent history expansion.
|
||||
@@ -2710,7 +2710,7 @@ The search path for commands.
|
||||
It is a colon-separated list of directories in which
|
||||
the shell looks for commands (see
|
||||
.SM
|
||||
.B COMMAND EXECUTION
|
||||
.B "COMMAND EXECUTION"
|
||||
below).
|
||||
A zero-length (null) directory name in the value of
|
||||
.SM
|
||||
@@ -2781,7 +2781,7 @@ The value of this parameter is used as the prompt for the
|
||||
.B select
|
||||
command (see
|
||||
.SM
|
||||
.B SHELL GRAMMAR
|
||||
.B "SHELL GRAMMAR"
|
||||
above).
|
||||
.TP
|
||||
.B PS4
|
||||
@@ -2877,38 +2877,41 @@ If set, \fBbash\fP uses its value as the name of a directory in which
|
||||
.B auto_resume
|
||||
This variable controls how the shell interacts with the user and
|
||||
job control.
|
||||
If this variable is set, single-word simple
|
||||
commands without redirections are treated as candidates for resumption
|
||||
If this variable is set, simple commands
|
||||
consisting of only a single word,
|
||||
without redirections, are treated as candidates for resumption
|
||||
of an existing stopped job.
|
||||
There is no ambiguity allowed; if there is more than one job
|
||||
beginning with the string typed, the most recently accessed job
|
||||
is selected.
|
||||
beginning with or containing
|
||||
the word, this selects the most recently accessed job.
|
||||
The
|
||||
.I name
|
||||
of a stopped job, in this context, is the command line used to
|
||||
start it.
|
||||
start it, as displayed by \fBjobs\fP.
|
||||
If set to the value
|
||||
.IR exact ,
|
||||
the string supplied must match the name of a stopped job exactly;
|
||||
the word must match the name of a stopped job exactly;
|
||||
if set to
|
||||
.IR substring ,
|
||||
the string supplied needs to match a substring of the name of a
|
||||
stopped job. The
|
||||
the word needs to match a substring of the name of a stopped job.
|
||||
The
|
||||
.I substring
|
||||
value provides functionality analogous to the
|
||||
.B %?
|
||||
job identifier (see
|
||||
.SM
|
||||
.B JOB CONTROL
|
||||
below). If set to any other value, the supplied string must
|
||||
be a prefix of a stopped job's name; this provides functionality
|
||||
analogous to the \fB%\fP\fIstring\fP job identifier.
|
||||
.B "JOB CONTROL"
|
||||
below).
|
||||
If set to any other value (e.g.,
|
||||
.IR prefix ),
|
||||
the word must be a prefix of a stopped job's name;
|
||||
this provides functionality analogous to the \fB%\fP\fIstring\fP job identifier.
|
||||
.TP
|
||||
.B histchars
|
||||
The two or three characters which control history expansion
|
||||
and tokenization (see
|
||||
.SM
|
||||
.B HISTORY EXPANSION
|
||||
.B "HISTORY EXPANSION"
|
||||
below).
|
||||
The first character is the \fIhistory expansion\fP character,
|
||||
the character which signals the start of a history
|
||||
@@ -3043,7 +3046,7 @@ part of the
|
||||
expansion of the original word.
|
||||
This is analogous to the expansion
|
||||
of the special parameters \fB*\fP and \fB@\fP (see
|
||||
.B Special Parameters
|
||||
.B "Special Parameters"
|
||||
above).
|
||||
.PP
|
||||
${#\fIname\fP[\fIsubscript\fP]} expands to the length of
|
||||
@@ -3326,8 +3329,8 @@ number without a leading
|
||||
.Q +
|
||||
or
|
||||
.Q \- ,
|
||||
.Q +
|
||||
is assumed.
|
||||
tilde expansion assumes
|
||||
.Q + .
|
||||
.PP
|
||||
The results of tilde expansion are treated as if they were quoted, so
|
||||
the replacement is not subject to word splitting and pathname expansion.
|
||||
@@ -3447,10 +3450,11 @@ ${\fIparameter\fP\fB:?\fP\fIword\fP}
|
||||
\fBDisplay Error if Null or Unset\fP.
|
||||
If
|
||||
.I parameter
|
||||
is null or unset, the expansion of \fIword\fP (or a message to that effect
|
||||
is null or unset, the shell writes
|
||||
the expansion of \fIword\fP (or a message to that effect
|
||||
if
|
||||
.I word
|
||||
is not present) is written to the standard error and the shell, if it
|
||||
is not present) to the standard error and, if it
|
||||
is not interactive, exits with a non-zero status.
|
||||
An interactive shell does not exit, but does not execute the command
|
||||
associated with the expansion.
|
||||
@@ -3583,7 +3587,7 @@ is expanded to produce a pattern just as in pathname
|
||||
expansion, and matched against the expanded value of
|
||||
.I parameter
|
||||
using the rules described under
|
||||
.B Pattern Matching
|
||||
.B "Pattern Matching"
|
||||
below.
|
||||
If the pattern matches the beginning of
|
||||
the value of
|
||||
@@ -3622,7 +3626,7 @@ The \fIword\fP is expanded to produce a pattern just as in
|
||||
pathname expansion, and matched against the expanded value of
|
||||
.I parameter
|
||||
using the rules described under
|
||||
.B Pattern Matching
|
||||
.B "Pattern Matching"
|
||||
below.
|
||||
If the pattern matches a trailing portion of the expanded value of
|
||||
.IR parameter ,
|
||||
@@ -3664,7 +3668,7 @@ The \fIpattern\fP is expanded to produce a pattern just as in
|
||||
pathname expansion and matched against the expanded value of
|
||||
\fIparameter\fP
|
||||
using the rules described under
|
||||
.B Pattern Matching
|
||||
.B "Pattern Matching"
|
||||
below.
|
||||
The longest match of \fIpattern\fP
|
||||
in the expanded value is replaced with \fIstring\fP.
|
||||
@@ -4877,9 +4881,13 @@ before executing any of the commands on that line or the compound command.
|
||||
Aliases are expanded when a command is read, not when it is executed.
|
||||
Therefore, an
|
||||
alias definition appearing on the same line as another
|
||||
command does not take effect until the shell reads the next line of input.
|
||||
command does not take effect until the shell reads the next line of input,
|
||||
and an alias definition in a compound command does not take
|
||||
effect until the shell parses and executes the entire compound command.
|
||||
The commands following the alias definition
|
||||
on that line are not affected by the new alias.
|
||||
on that line,
|
||||
or in the rest of a compound command,
|
||||
are not affected by the new alias.
|
||||
This behavior is also an issue when functions are executed.
|
||||
Aliases are expanded when a function definition is read,
|
||||
not when the function is executed, because a function definition
|
||||
@@ -5495,7 +5503,7 @@ interpreter consist of a single optional argument following the
|
||||
interpreter name on the first line of the program, followed
|
||||
by the name of the program, followed by the command
|
||||
arguments, if any.
|
||||
.SH COMMAND EXECUTION ENVIRONMENT
|
||||
.SH "COMMAND EXECUTION ENVIRONMENT"
|
||||
The shell has an \fIexecution environment\fP, which consists of the
|
||||
following:
|
||||
.IP \(bu
|
||||
@@ -5846,17 +5854,22 @@ complete, for compatibility.
|
||||
.I Job control
|
||||
refers to the ability to selectively stop (\fIsuspend\fP)
|
||||
the execution of processes and continue (\fIresume\fP)
|
||||
their execution at a later point. A user typically employs
|
||||
their execution at a later point.
|
||||
A user typically employs
|
||||
this facility via an interactive interface supplied jointly
|
||||
by the operating system kernel's terminal driver and
|
||||
.BR bash .
|
||||
.PP
|
||||
The shell associates a
|
||||
.I job
|
||||
with each pipeline. It keeps a table of currently executing
|
||||
jobs, which may be listed with the
|
||||
with each pipeline.
|
||||
It keeps a table of currently executing
|
||||
jobs, which the
|
||||
.B jobs
|
||||
command. When
|
||||
command will display.
|
||||
Each job has a \fIjob number\fP, which \fBjobs\fP displays between brackets.
|
||||
Job numbers start at 1.
|
||||
When
|
||||
.B bash
|
||||
starts a job asynchronously (in the
|
||||
.IR background ),
|
||||
@@ -5874,15 +5887,20 @@ uses the
|
||||
.I job
|
||||
abstraction as the basis for job control.
|
||||
.PP
|
||||
To facilitate the implementation of the user interface to job
|
||||
control, the operating system maintains the notion of a \fIcurrent terminal
|
||||
process group ID\fP. Members of this process group (processes whose
|
||||
To facilitate the implementation of the user interface to job control,
|
||||
each process has a \fIprocess group ID\fP, and
|
||||
the operating system maintains the notion of a \fIcurrent terminal
|
||||
process group ID\fP.
|
||||
Processes that have the same process group ID are said to be part of
|
||||
the same \fIprocess group\fP.
|
||||
Members of the \fIforeground\fP process group (processes whose
|
||||
process group ID is equal to the current terminal process group ID)
|
||||
receive keyboard-generated signals such as
|
||||
.SM
|
||||
.BR SIGINT .
|
||||
These processes are said to be in the
|
||||
.IR foreground .
|
||||
Processes in the foreground process group are said to be
|
||||
.I foreground
|
||||
processes.
|
||||
.I Background
|
||||
processes are those whose process group ID differs from the terminal's;
|
||||
such processes are immune to keyboard-generated signals.
|
||||
@@ -5894,7 +5912,7 @@ Background processes which attempt to read from (write to when
|
||||
.Q tostop
|
||||
is in effect) the terminal are sent a
|
||||
.SM
|
||||
.B SIGTTIN (SIGTTOU)
|
||||
.B "SIGTTIN (SIGTTOU)"
|
||||
signal by the kernel's terminal driver,
|
||||
which, unless caught, suspends the process.
|
||||
.PP
|
||||
@@ -5909,31 +5927,38 @@ Typing the
|
||||
character (typically
|
||||
.BR \*^Z ,
|
||||
Control-Z) while a process is running
|
||||
causes that process to be stopped and returns control to
|
||||
stops that process and returns control to
|
||||
.BR bash .
|
||||
Typing the
|
||||
.I "delayed suspend"
|
||||
character (typically
|
||||
.BR \*^Y ,
|
||||
Control-Y) causes the process to be stopped when it
|
||||
attempts to read input from the terminal, and control to
|
||||
be returned to
|
||||
Control-Y) causes the process stop when it
|
||||
attempts to read input from the terminal, and returns control to
|
||||
.BR bash .
|
||||
The user may then manipulate the state of this job, using the
|
||||
The user then manipulates the state of this job, using the
|
||||
.B bg
|
||||
command to continue it in the background, the
|
||||
.B fg
|
||||
command to continue it in the foreground, or
|
||||
the
|
||||
command to continue it in the foreground, or the
|
||||
.B kill
|
||||
command to kill it. A \fB\*^Z\fP takes effect immediately,
|
||||
and has the additional side effect of causing pending output
|
||||
and typeahead to be discarded.
|
||||
command to kill it.
|
||||
The suspend character takes effect immediately,
|
||||
and has the additional side effect of discarding any pending output
|
||||
and typeahead.
|
||||
To force a background process to stop, or stop a process
|
||||
that's not associated with the current terminal session,
|
||||
send it the
|
||||
.SM
|
||||
.B SIGSTOP
|
||||
signal using \fBkill\fP.
|
||||
.PP
|
||||
There are a number of ways to refer to a job in the shell.
|
||||
The character
|
||||
The
|
||||
.B %
|
||||
introduces a job specification (\fIjobspec\fP). Job number
|
||||
character introduces a job specification (jobspec).
|
||||
.PP
|
||||
Job number
|
||||
.I n
|
||||
may be referred to as
|
||||
.BR %n .
|
||||
@@ -5941,42 +5966,45 @@ A job may also be referred to using a prefix of the name used to
|
||||
start it, or using a substring that appears in its command line.
|
||||
For example,
|
||||
.B %ce
|
||||
refers to a stopped
|
||||
job whose command name begins with
|
||||
refers to a job whose command name begins with
|
||||
.BR ce .
|
||||
If a prefix matches more than one job,
|
||||
.B bash
|
||||
reports an error. Using
|
||||
Using
|
||||
.BR %?ce ,
|
||||
on the other hand, refers to any job containing the string
|
||||
.B ce
|
||||
in its command line. If the substring matches more than one job,
|
||||
in its command line.
|
||||
If the prefix or substring matches more than one job,
|
||||
.B bash
|
||||
reports an error. The symbols
|
||||
reports an error.
|
||||
.PP
|
||||
The symbols
|
||||
.B %%
|
||||
and
|
||||
.B %+
|
||||
refer to the shell's notion of the
|
||||
.IR "current job" ,
|
||||
which is the last job stopped while it was in
|
||||
the foreground or started in the background.
|
||||
The
|
||||
.I "previous job"
|
||||
may be referenced using
|
||||
.BR %\- .
|
||||
.IR "current job" .
|
||||
A single % (with no accompanying job specification) also refers to the
|
||||
current job.
|
||||
.B %\-
|
||||
refers to the
|
||||
.IR "previous job" .
|
||||
When a job starts in the background,
|
||||
a job stops while in the foreground,
|
||||
or a job is resumed in the background,
|
||||
it becomes the current job.
|
||||
The job that was the current job becomes the previous job.
|
||||
When the current job terminates, the previous job becomes the
|
||||
current job.
|
||||
If there is only a single job, \fB%+\fP and \fB%\-\fP can both be used
|
||||
to refer to that job.
|
||||
In output pertaining to jobs (e.g., the output of the
|
||||
.B jobs
|
||||
command), the current job is always flagged with a
|
||||
command), the current job is always marked with a
|
||||
.BR + ,
|
||||
and the previous job with a
|
||||
.BR \- .
|
||||
A single % (with no accompanying job specification) also refers to the
|
||||
current job.
|
||||
.PP
|
||||
Simply naming a job can be used to bring it into the
|
||||
foreground:
|
||||
Simply naming a job can be used to bring it into the foreground:
|
||||
.B %1
|
||||
is a synonym for
|
||||
.Q "fg %1" ,
|
||||
@@ -5989,12 +6017,13 @@ resumes job 1 in the background, equivalent to
|
||||
The shell learns immediately whenever a job changes state.
|
||||
Normally,
|
||||
.B bash
|
||||
waits until it is about to print a prompt before reporting
|
||||
waits until it is about to print a prompt before
|
||||
notifying the user about
|
||||
changes in a job's status so as to not interrupt
|
||||
any other output,
|
||||
though it will notify of changes in a job's status after a
|
||||
foreground command in
|
||||
a list completes, before executing the next command.
|
||||
a list completes, before executing the next command in the list.
|
||||
If the
|
||||
.B \-b
|
||||
option to the
|
||||
@@ -6003,27 +6032,36 @@ builtin command
|
||||
is enabled,
|
||||
.B bash
|
||||
reports such changes immediately.
|
||||
Any trap on
|
||||
\fBBash\fP executes any trap on
|
||||
.SM
|
||||
.B SIGCHLD
|
||||
is executed for each child that exits.
|
||||
for each child that terminates.
|
||||
.PP
|
||||
If an attempt to exit
|
||||
When a job terminates and \fBbash\fP notifies the user about it,
|
||||
\fBbash\fP removes the job from the table.
|
||||
It will not appear in \fBjobs\fP output, but \fBwait\fP will
|
||||
report its exit status, as long as it's supplied the process ID
|
||||
associated with the job as an argument.
|
||||
When the table is empty, job numbers start over at 1.
|
||||
.PP
|
||||
If a user attempts to exit
|
||||
.B bash
|
||||
is made while jobs are stopped (or, if the \fBcheckjobs\fP shell option has
|
||||
while jobs are stopped (or, if the \fBcheckjobs\fP shell option has
|
||||
been enabled using the \fBshopt\fP builtin, running), the shell prints a
|
||||
warning message, and, if the \fBcheckjobs\fP option is enabled, lists the
|
||||
jobs and their statuses.
|
||||
The
|
||||
.B jobs
|
||||
command may then be used to inspect their status.
|
||||
If a second attempt to exit is made without an intervening command,
|
||||
the shell does not print another warning, and any stopped
|
||||
jobs are terminated.
|
||||
If the user immediately attempts to exit again,
|
||||
without an intervening command,
|
||||
\fBbash\fP does not print another warning, and
|
||||
terminates any stopped jobs.
|
||||
.PP
|
||||
When the shell is waiting for a job or process using the \fBwait\fP
|
||||
builtin, and job control is enabled, \fBwait\fP will return when the
|
||||
job changes state. The \fB\-f\fP option causes \fBwait\fP to wait
|
||||
job changes state.
|
||||
The \fB\-f\fP option causes \fBwait\fP to wait
|
||||
until the job or process terminates before returning.
|
||||
.SH PROMPTING
|
||||
When executing interactively,
|
||||
@@ -6323,7 +6361,7 @@ Key bindings may contain the following symbolic character names:
|
||||
.IR NEWLINE ,
|
||||
.IR RET ,
|
||||
.IR RETURN ,
|
||||
.IR RUBOUT ,
|
||||
.IR RUBOUT (a destructive backspace),
|
||||
.IR SPACE ,
|
||||
.IR SPC ,
|
||||
and
|
||||
@@ -7364,6 +7402,7 @@ Delete the character at point.
|
||||
If this function is bound to the
|
||||
same character as the tty \fBEOF\fP character, as \fBC\-d\fP
|
||||
commonly is, see above for the effects.
|
||||
This may also be bound to the Delete key on some keyboards.
|
||||
.TP
|
||||
.B backward\-delete\-char (Rubout)
|
||||
Delete the character behind the cursor.
|
||||
@@ -7659,7 +7698,7 @@ completion matches.
|
||||
.B complete\-into\-braces (M\-{)
|
||||
Perform filename completion and insert the list of possible completions
|
||||
enclosed within braces so the list is available to the shell (see
|
||||
.B Brace Expansion
|
||||
.B "Brace Expansion"
|
||||
above).
|
||||
.PD
|
||||
.SS "Keyboard Macros"
|
||||
@@ -8529,21 +8568,21 @@ and performing any specified
|
||||
redirections.
|
||||
The return status is zero.
|
||||
.TP
|
||||
\fB\&.\| \fP [\fB\-p\fP \fIpath\fP] \fIfilename\fP [\fIarguments\fP]
|
||||
\fB\&.\&\fP [\fB\-p\fP \fIpath\fP] \fIfilename\fP [\fIarguments\fP]
|
||||
.PD 0
|
||||
.TP
|
||||
\fBsource\fP [\fB\-p\fP \fIpath\fP] \fIfilename\fP [\fIarguments\fP]
|
||||
.PD
|
||||
The \fB\&.\| \fP command (\fBsource\fP) reads and execute commands from
|
||||
The \fB\&.\&\fP command (\fBsource\fP) reads and execute commands from
|
||||
.I filename
|
||||
in the current shell environment and returns the exit status of the
|
||||
last command executed from
|
||||
.IR filename .
|
||||
.IP
|
||||
If \fIfilename\fP does not contain a slash, \fB\&.\| \fP searchs for it.
|
||||
If the \fB\-p\fP option is supplied, \fB\&.\| \fP treats \fIpath\fP
|
||||
If \fIfilename\fP does not contain a slash, \fB\&.\&\fP searches for it.
|
||||
If the \fB\-p\fP option is supplied, \fB\&.\&\fP treats \fIpath\fP
|
||||
as a colon-separated list of directories in which to find \fIfilename\fP;
|
||||
otherwise, \fB\&.\| \fP uses the entries in
|
||||
otherwise, \fB\&.\&\fP uses the entries in
|
||||
.SM
|
||||
.B PATH
|
||||
to find the directory containing
|
||||
@@ -8558,7 +8597,7 @@ If the
|
||||
.B sourcepath
|
||||
option to the
|
||||
.B shopt
|
||||
builtin command is turned off, \fB\&.\| \fP does not search
|
||||
builtin command is turned off, \fB\&.\&\fP does not search
|
||||
.SM
|
||||
.BR PATH .
|
||||
.IP
|
||||
@@ -8599,7 +8638,7 @@ had been started with
|
||||
.BR & .
|
||||
If
|
||||
.I jobspec
|
||||
is not present, the shell's notion of the \fIcurrent job\fP is used.
|
||||
is not present, the shell uses its notion of the \fIcurrent job\fP.
|
||||
.B bg
|
||||
.I jobspec
|
||||
returns 0 unless run when job control is disabled or, when run with
|
||||
@@ -9483,19 +9522,18 @@ Without options, remove each
|
||||
.I id
|
||||
from the table of active jobs.
|
||||
Each \fIid\fP may be a job specification \fIjobspec\fP
|
||||
or a process ID
|
||||
\fIpid\fP; if \fIid\fP is a \fIpid\fP,
|
||||
or a process ID \fIpid\fP;
|
||||
if \fIid\fP is a \fIpid\fP,
|
||||
\fBdisown\fP uses the job containing \fIpid\fP as \fIjobspec\fP.
|
||||
If
|
||||
.IP
|
||||
If the \fB\-h\fP option is supplied,
|
||||
\fBdisown\fP does not remove the jobs corresponding to each
|
||||
.I id
|
||||
is not present, and neither the \fB\-a\fP nor the \fB\-r\fP option
|
||||
is supplied, \fBdisown\fP removes the \fIcurrent job\fP.
|
||||
If the \fB\-h\fP option is supplied, the job corresponding to each
|
||||
.I id
|
||||
is not removed from the table, but is marked so that
|
||||
from the jobs table,
|
||||
but rather marks them so the shell does not send
|
||||
.SM
|
||||
.B SIGHUP
|
||||
is not sent to the job if the shell receives a
|
||||
to the job if the shell receives a
|
||||
.SM
|
||||
.BR SIGHUP .
|
||||
.IP
|
||||
@@ -9507,7 +9545,11 @@ option means to remove or mark all jobs; the
|
||||
.B \-r
|
||||
option without an
|
||||
.I id
|
||||
argument restricts operation to running jobs.
|
||||
argument removes or marks running jobs.
|
||||
If no
|
||||
.I id
|
||||
is supplied, and neither the \fB\-a\fP nor the \fB\-r\fP option
|
||||
is supplied, \fBdisown\fP removes or marks the current job.
|
||||
.IP
|
||||
The return value is 0 unless an
|
||||
.I id
|
||||
@@ -9853,7 +9895,7 @@ Resume
|
||||
in the foreground, and make it the current job.
|
||||
If
|
||||
.I jobspec
|
||||
is not present, use the shell's notion of the \fIcurrent job\fP.
|
||||
is not present, \fBfg\fP uses the shell's notion of the \fIcurrent job\fP.
|
||||
The return value is that of the command placed into the foreground,
|
||||
or failure if run when job control is disabled or, when run with
|
||||
job control enabled, if
|
||||
@@ -10216,7 +10258,7 @@ passing it
|
||||
returning its exit status.
|
||||
.TP
|
||||
\fBkill\fP [\fB\-s\fP \fIsigspec\fP | \fB\-n\fP \fIsignum\fP | \fB\-\fP\fIsigspec\fP] \
|
||||
[\fIpid\fP | \fIjobspec\fP] .\|.\|.
|
||||
\fIid\fP [ .\|.\|. ]
|
||||
.PD 0
|
||||
.TP
|
||||
\fBkill\fP \fB\-l\fP|\fB\-L\fP [\fIsigspec\fP | \fIexit_status\fP]
|
||||
@@ -10225,10 +10267,12 @@ Send the signal specified by
|
||||
.I sigspec
|
||||
or
|
||||
.I signum
|
||||
to the processes named by
|
||||
.I pid
|
||||
or
|
||||
.IR jobspec .
|
||||
to the processes named by each
|
||||
.IR id .
|
||||
Each
|
||||
.I id
|
||||
may be a job specification \fIjobspec\fP
|
||||
or a process ID \fIpid\fP.
|
||||
.I sigspec
|
||||
is either a case-insensitive signal name such as
|
||||
.SM
|
||||
@@ -10247,9 +10291,9 @@ sends
|
||||
.SM
|
||||
.BR SIGTERM .
|
||||
.IP
|
||||
An argument of
|
||||
The
|
||||
.B \-l
|
||||
lists the signal names.
|
||||
option lists the signal names.
|
||||
If any arguments are supplied when
|
||||
.B \-l
|
||||
is given,
|
||||
@@ -10259,7 +10303,11 @@ and the return status is 0.
|
||||
The \fIexit_status\fP argument to
|
||||
.B \-l
|
||||
is a number specifying either a signal number or the exit status of
|
||||
a process terminated by a signal.
|
||||
a process terminated by a signal;
|
||||
if it is supplied, \fBkill\fP prints the name of the signal that caused
|
||||
the process to terminate.
|
||||
\fBkill\fP assumes that process exit statuses are greater than 128;
|
||||
anything less than that is a signal number.
|
||||
The
|
||||
.B \-L
|
||||
option is equivalent to \fB\-l\fP.
|
||||
@@ -10891,7 +10939,7 @@ a \fIlist\fP,
|
||||
or a \fIcompound command\fP
|
||||
(see
|
||||
.SM
|
||||
.B SHELL GRAMMAR
|
||||
.B "SHELL GRAMMAR"
|
||||
.ie \n(zZ=1 in \fIbash\fP(1)),
|
||||
.el above),
|
||||
exits with a non-zero status.
|
||||
@@ -10957,7 +11005,7 @@ Job control is enabled.
|
||||
This option is on by default for interactive shells on systems
|
||||
that support it (see
|
||||
.SM
|
||||
.B JOB CONTROL
|
||||
.B "JOB CONTROL"
|
||||
.ie \n(zZ=1 in \fIbash\fP(1)).
|
||||
.el above).
|
||||
All processes run in a separate process group.
|
||||
@@ -11023,7 +11071,7 @@ The effect is as if the shell command
|
||||
.QN "IGNOREEOF=10"
|
||||
had been executed
|
||||
(see
|
||||
.B Shell Variables
|
||||
.B "Shell Variables"<
|
||||
.ie \n(zZ=1 in \fIbash\fP(1)).
|
||||
.el above).
|
||||
.TP 8
|
||||
@@ -11179,7 +11227,7 @@ or associated word list, to the standard error.
|
||||
.TP 8
|
||||
.B \-B
|
||||
The shell performs brace expansion (see
|
||||
.B Brace Expansion
|
||||
.B "Brace Expansion"
|
||||
.ie \n(zZ=1 in \fIbash\fP(1)).
|
||||
.el above).
|
||||
This is on by default.
|
||||
@@ -11590,7 +11638,7 @@ This option is enabled by default.
|
||||
.B globasciiranges
|
||||
If set, range expressions used in pattern matching bracket expressions (see
|
||||
.SM
|
||||
.B Pattern Matching
|
||||
.B "Pattern Matching"
|
||||
.ie \n(zZ=1 in \fIbash\fP(1))
|
||||
.el above)
|
||||
behave as if in the traditional C locale when performing comparisons.
|
||||
@@ -11730,7 +11778,7 @@ If set,
|
||||
.B bash
|
||||
matches filenames in a case\-insensitive fashion when performing pathname
|
||||
expansion (see
|
||||
.B Pathname Expansion
|
||||
.B "Pathname Expansion"
|
||||
.ie \n(zZ=1 in \fIbash\fP(1)).
|
||||
.el above).
|
||||
.TP 8
|
||||
@@ -11753,7 +11801,7 @@ If the string is not translated, this has no effect.
|
||||
.B nullglob
|
||||
If set, pathname expansion patterns which match no files
|
||||
(see
|
||||
.B Pathname Expansion
|
||||
.B "Pathname Expansion"
|
||||
.ie \n(zZ=1 in \fIbash\fP(1))
|
||||
.el above)
|
||||
expand to nothing and are removed, rather than expanding to themselves.
|
||||
@@ -12061,7 +12109,7 @@ is executed before every \fIsimple command\fP, \fIfor\fP command,
|
||||
arithmetic \fIfor\fP command, and before the first command executes
|
||||
in a shell function (see
|
||||
.SM
|
||||
.B SHELL GRAMMAR
|
||||
.B "SHELL GRAMMAR"
|
||||
.ie \n(zZ=1 in \fIbash\fP(1)).
|
||||
.el above).
|
||||
Refer to the description of the \fBextdebug\fP shell option
|
||||
@@ -12454,8 +12502,9 @@ is readonly or may not be unset.
|
||||
\fBwait\fP [\fB\-fn\fP] [\fP\-p\fP \fIvarname\fP] [\fIid\fP .\|.\|.]
|
||||
Wait for each specified child process \fIid\fP and return the
|
||||
termination status of the last \fIid\fP.
|
||||
Each \fIid\fP may be a process ID or a job specification;
|
||||
if a job spec is supplied, \fBwait\fP waits for all processes in the job.
|
||||
Each \fIid\fP may be a process ID \fIpid\fP
|
||||
or a job specification \fIjobspec\fP;
|
||||
if a jobspec is supplied, \fBwait\fP waits for all processes in the job.
|
||||
.IP
|
||||
If no options or \fIid\fPs are supplied,
|
||||
\fBwait\fP waits for all running background jobs and
|
||||
@@ -12464,20 +12513,21 @@ if its process id is the same as \fB$!\fP,
|
||||
and the return status is zero.
|
||||
.IP
|
||||
If the \fB\-n\fP option is supplied, \fBwait\fP waits for any one of
|
||||
the given \fIid\fPs or, if no \fIid\fPs are supplied, any job
|
||||
or process substitution,
|
||||
the given \fIid\fPs or,
|
||||
if no \fIid\fPs are supplied, any job or process substitution,
|
||||
to complete and returns its exit status.
|
||||
If none of the supplied \fIid\fPs is a child of the shell,
|
||||
or if no \fIid\fPs are supplied and the shell has no unwaited-for children,
|
||||
the exit status is 127.
|
||||
.IP
|
||||
If the \fB\-p\fP option is supplied, the process or job identifier
|
||||
of the job for which the exit status is returned is assigned to the
|
||||
If the \fB\-p\fP option is supplied, \fBwait\fP assigns
|
||||
the process or job identifier of the job
|
||||
for which the exit status is returned to the
|
||||
variable \fIvarname\fP named by the option argument.
|
||||
The variable,
|
||||
which cannot be readonly,
|
||||
will be unset initially, before any assignment.
|
||||
This is useful only when the \fB\-n\fP option is supplied.
|
||||
This is useful only when used with the \fB\-n\fP option.
|
||||
.IP
|
||||
Supplying the \fB\-f\fP option, when job control is enabled,
|
||||
forces \fBwait\fP to wait for each \fIid\fP to terminate before
|
||||
|
||||
+167
-109
@@ -3,7 +3,7 @@
|
||||
</HEAD>
|
||||
<BODY><TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2024 October 10<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2024 October 14<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<BR><A HREF="#index">Index</A>
|
||||
@@ -802,7 +802,9 @@ where pipes are created,
|
||||
is executed in a <I>subshell</I>, which is a
|
||||
separate process.
|
||||
See
|
||||
<FONT SIZE=-1><B>COMMAND EXECUTION ENVIRONMENT</B></FONT>
|
||||
<FONT SIZE=-1><B>COMMAND EXECUTION ENVIRONMENT</B>
|
||||
|
||||
</FONT>
|
||||
for a description of subshells and a subshell environment.
|
||||
If the <B>lastpipe</B> option is enabled using the <B>shopt</B> builtin
|
||||
(see the description of <B>shopt</B> below),
|
||||
@@ -915,7 +917,9 @@ newline in place of a semicolon.
|
||||
<DL COMPACT>
|
||||
<DT>(<I>list</I>)<DD>
|
||||
<I>list</I> is executed in a subshell (see
|
||||
<FONT SIZE=-1><B>COMMAND EXECUTION ENVIRONMENT</B></FONT>
|
||||
<FONT SIZE=-1><B>COMMAND EXECUTION ENVIRONMENT</B>
|
||||
|
||||
</FONT>
|
||||
below for a description of a subshell environment).
|
||||
Variable assignments and builtin
|
||||
commands that affect the shell's environment do not remain in effect
|
||||
@@ -3607,26 +3611,27 @@ If set, <B>bash</B> uses its value as the name of a directory in which
|
||||
<DD>
|
||||
This variable controls how the shell interacts with the user and
|
||||
job control.
|
||||
If this variable is set, single-word simple
|
||||
commands without redirections are treated as candidates for resumption
|
||||
If this variable is set, simple commands
|
||||
consisting of only a single word,
|
||||
without redirections, are treated as candidates for resumption
|
||||
of an existing stopped job.
|
||||
There is no ambiguity allowed; if there is more than one job
|
||||
beginning with the string typed, the most recently accessed job
|
||||
is selected.
|
||||
beginning with or containing
|
||||
the word, this selects the most recently accessed job.
|
||||
The
|
||||
<I>name</I>
|
||||
|
||||
of a stopped job, in this context, is the command line used to
|
||||
start it.
|
||||
start it, as displayed by <B>jobs</B>.
|
||||
If set to the value
|
||||
<I>exact</I>,
|
||||
|
||||
the string supplied must match the name of a stopped job exactly;
|
||||
the word must match the name of a stopped job exactly;
|
||||
if set to
|
||||
<I>substring</I>,
|
||||
|
||||
the string supplied needs to match a substring of the name of a
|
||||
stopped job. The
|
||||
the word needs to match a substring of the name of a stopped job.
|
||||
The
|
||||
<I>substring</I>
|
||||
|
||||
value provides functionality analogous to the
|
||||
@@ -3636,9 +3641,12 @@ job identifier (see
|
||||
<FONT SIZE=-1><B>JOB CONTROL</B>
|
||||
|
||||
</FONT>
|
||||
below). If set to any other value, the supplied string must
|
||||
be a prefix of a stopped job's name; this provides functionality
|
||||
analogous to the <B>%</B><I>string</I> job identifier.
|
||||
below).
|
||||
If set to any other value (e.g.,
|
||||
<I>prefix</I>),
|
||||
|
||||
the word must be a prefix of a stopped job's name;
|
||||
this provides functionality analogous to the <B>%</B><I>string</I> job identifier.
|
||||
<DT><B>histchars</B>
|
||||
|
||||
<DD>
|
||||
@@ -4165,8 +4173,8 @@ number without a leading
|
||||
|
||||
or
|
||||
|
||||
tilde expansion assumes
|
||||
|
||||
is assumed.
|
||||
<P>
|
||||
|
||||
The results of tilde expansion are treated as if they were quoted, so
|
||||
@@ -4314,11 +4322,12 @@ not be assigned in this way.
|
||||
If
|
||||
<I>parameter</I>
|
||||
|
||||
is null or unset, the expansion of <I>word</I> (or a message to that effect
|
||||
is null or unset, the shell writes
|
||||
the expansion of <I>word</I> (or a message to that effect
|
||||
if
|
||||
<I>word</I>
|
||||
|
||||
is not present) is written to the standard error and the shell, if it
|
||||
is not present) to the standard error and, if it
|
||||
is not interactive, exits with a non-zero status.
|
||||
An interactive shell does not exit, but does not execute the command
|
||||
associated with the expansion.
|
||||
@@ -6124,9 +6133,13 @@ before executing any of the commands on that line or the compound command.
|
||||
Aliases are expanded when a command is read, not when it is executed.
|
||||
Therefore, an
|
||||
alias definition appearing on the same line as another
|
||||
command does not take effect until the shell reads the next line of input.
|
||||
command does not take effect until the shell reads the next line of input,
|
||||
and an alias definition in a compound command does not take
|
||||
effect until the shell parses and executes the entire compound command.
|
||||
The commands following the alias definition
|
||||
on that line are not affected by the new alias.
|
||||
on that line,
|
||||
or in the rest of a compound command,
|
||||
are not affected by the new alias.
|
||||
This behavior is also an issue when functions are executed.
|
||||
Aliases are expanded when a function definition is read,
|
||||
not when the function is executed, because a function definition
|
||||
@@ -7328,7 +7341,8 @@ complete, for compatibility.
|
||||
|
||||
refers to the ability to selectively stop (<I>suspend</I>)
|
||||
the execution of processes and continue (<I>resume</I>)
|
||||
their execution at a later point. A user typically employs
|
||||
their execution at a later point.
|
||||
A user typically employs
|
||||
this facility via an interactive interface supplied jointly
|
||||
by the operating system kernel's terminal driver and
|
||||
<B>bash</B>.
|
||||
@@ -7338,11 +7352,15 @@ by the operating system kernel's terminal driver and
|
||||
The shell associates a
|
||||
<I>job</I>
|
||||
|
||||
with each pipeline. It keeps a table of currently executing
|
||||
jobs, which may be listed with the
|
||||
with each pipeline.
|
||||
It keeps a table of currently executing
|
||||
jobs, which the
|
||||
<B>jobs</B>
|
||||
|
||||
command. When
|
||||
command will display.
|
||||
Each job has a <I>job number</I>, which <B>jobs</B> displays between brackets.
|
||||
Job numbers start at 1.
|
||||
When
|
||||
<B>bash</B>
|
||||
|
||||
starts a job asynchronously (in the
|
||||
@@ -7368,17 +7386,22 @@ uses the
|
||||
abstraction as the basis for job control.
|
||||
<P>
|
||||
|
||||
To facilitate the implementation of the user interface to job
|
||||
control, the operating system maintains the notion of a <I>current terminal
|
||||
process group ID</I>. Members of this process group (processes whose
|
||||
To facilitate the implementation of the user interface to job control,
|
||||
each process has a <I>process group ID</I>, and
|
||||
the operating system maintains the notion of a <I>current terminal
|
||||
process group ID</I>.
|
||||
Processes that have the same process group ID are said to be part of
|
||||
the same <I>process group</I>.
|
||||
Members of the <I>foreground</I> process group (processes whose
|
||||
process group ID is equal to the current terminal process group ID)
|
||||
receive keyboard-generated signals such as
|
||||
<FONT SIZE=-1><B>SIGINT</B>.
|
||||
|
||||
</FONT>
|
||||
These processes are said to be in the
|
||||
<I>foreground</I>.
|
||||
Processes in the foreground process group are said to be
|
||||
<I>foreground</I>
|
||||
|
||||
processes.
|
||||
<I>Background</I>
|
||||
|
||||
processes are those whose process group ID differs from the terminal's;
|
||||
@@ -7412,7 +7435,7 @@ character (typically
|
||||
<B>^Z</B>,
|
||||
|
||||
Control-Z) while a process is running
|
||||
causes that process to be stopped and returns control to
|
||||
stops that process and returns control to
|
||||
<B>bash</B>.
|
||||
|
||||
Typing the
|
||||
@@ -7421,31 +7444,40 @@ Typing the
|
||||
character (typically
|
||||
<B>^Y</B>,
|
||||
|
||||
Control-Y) causes the process to be stopped when it
|
||||
attempts to read input from the terminal, and control to
|
||||
be returned to
|
||||
Control-Y) causes the process stop when it
|
||||
attempts to read input from the terminal, and returns control to
|
||||
<B>bash</B>.
|
||||
|
||||
The user may then manipulate the state of this job, using the
|
||||
The user then manipulates the state of this job, using the
|
||||
<B>bg</B>
|
||||
|
||||
command to continue it in the background, the
|
||||
<B>fg</B>
|
||||
|
||||
command to continue it in the foreground, or
|
||||
the
|
||||
command to continue it in the foreground, or the
|
||||
<B>kill</B>
|
||||
|
||||
command to kill it. A <B>^Z</B> takes effect immediately,
|
||||
and has the additional side effect of causing pending output
|
||||
and typeahead to be discarded.
|
||||
command to kill it.
|
||||
The suspend character takes effect immediately,
|
||||
and has the additional side effect of discarding any pending output
|
||||
and typeahead.
|
||||
To force a background process to stop, or stop a process
|
||||
that's not associated with the current terminal session,
|
||||
send it the
|
||||
<FONT SIZE=-1><B>SIGSTOP</B>
|
||||
|
||||
</FONT>
|
||||
signal using <B>kill</B>.
|
||||
<P>
|
||||
|
||||
There are a number of ways to refer to a job in the shell.
|
||||
The character
|
||||
The
|
||||
<B>%</B>
|
||||
|
||||
introduces a job specification (<I>jobspec</I>). Job number
|
||||
character introduces a job specification (jobspec).
|
||||
<P>
|
||||
|
||||
Job number
|
||||
<I>n</I>
|
||||
|
||||
may be referred to as
|
||||
@@ -7456,56 +7488,59 @@ start it, or using a substring that appears in its command line.
|
||||
For example,
|
||||
<B>%ce</B>
|
||||
|
||||
refers to a stopped
|
||||
job whose command name begins with
|
||||
refers to a job whose command name begins with
|
||||
<B>ce</B>.
|
||||
|
||||
If a prefix matches more than one job,
|
||||
<B>bash</B>
|
||||
|
||||
reports an error. Using
|
||||
Using
|
||||
<B>%?ce</B>,
|
||||
|
||||
on the other hand, refers to any job containing the string
|
||||
<B>ce</B>
|
||||
|
||||
in its command line. If the substring matches more than one job,
|
||||
in its command line.
|
||||
If the prefix or substring matches more than one job,
|
||||
<B>bash</B>
|
||||
|
||||
reports an error. The symbols
|
||||
reports an error.
|
||||
<P>
|
||||
|
||||
The symbols
|
||||
<B>%%</B>
|
||||
|
||||
and
|
||||
<B>%+</B>
|
||||
|
||||
refer to the shell's notion of the
|
||||
<I>current job</I>,
|
||||
<I>current job</I>.
|
||||
|
||||
which is the last job stopped while it was in
|
||||
the foreground or started in the background.
|
||||
The
|
||||
<I>previous job</I>
|
||||
A single % (with no accompanying job specification) also refers to the
|
||||
current job.
|
||||
<B>%-</B>
|
||||
|
||||
may be referenced using
|
||||
<B>%-</B>.
|
||||
refers to the
|
||||
<I>previous job</I>.
|
||||
|
||||
When a job starts in the background,
|
||||
a job stops while in the foreground,
|
||||
or a job is resumed in the background,
|
||||
it becomes the current job.
|
||||
The job that was the current job becomes the previous job.
|
||||
When the current job terminates, the previous job becomes the
|
||||
current job.
|
||||
If there is only a single job, <B>%+</B> and <B>%-</B> can both be used
|
||||
to refer to that job.
|
||||
In output pertaining to jobs (e.g., the output of the
|
||||
<B>jobs</B>
|
||||
|
||||
command), the current job is always flagged with a
|
||||
command), the current job is always marked with a
|
||||
<B>+</B>,
|
||||
|
||||
and the previous job with a
|
||||
<B>-</B>.
|
||||
|
||||
A single % (with no accompanying job specification) also refers to the
|
||||
current job.
|
||||
<P>
|
||||
|
||||
Simply naming a job can be used to bring it into the
|
||||
foreground:
|
||||
Simply naming a job can be used to bring it into the foreground:
|
||||
<B>%1</B>
|
||||
|
||||
is a synonym for
|
||||
@@ -7521,12 +7556,13 @@ The shell learns immediately whenever a job changes state.
|
||||
Normally,
|
||||
<B>bash</B>
|
||||
|
||||
waits until it is about to print a prompt before reporting
|
||||
waits until it is about to print a prompt before
|
||||
notifying the user about
|
||||
changes in a job's status so as to not interrupt
|
||||
any other output,
|
||||
though it will notify of changes in a job's status after a
|
||||
foreground command in
|
||||
a list completes, before executing the next command.
|
||||
a list completes, before executing the next command in the list.
|
||||
If the
|
||||
<B>-b</B>
|
||||
|
||||
@@ -7538,17 +7574,25 @@ is enabled,
|
||||
<B>bash</B>
|
||||
|
||||
reports such changes immediately.
|
||||
Any trap on
|
||||
<B>Bash</B> executes any trap on
|
||||
<FONT SIZE=-1><B>SIGCHLD</B>
|
||||
|
||||
</FONT>
|
||||
is executed for each child that exits.
|
||||
for each child that terminates.
|
||||
<P>
|
||||
|
||||
If an attempt to exit
|
||||
When a job terminates and <B>bash</B> notifies the user about it,
|
||||
<B>bash</B> removes the job from the table.
|
||||
It will not appear in <B>jobs</B> output, but <B>wait</B> will
|
||||
report its exit status, as long as it's supplied the process ID
|
||||
associated with the job as an argument.
|
||||
When the table is empty, job numbers start over at 1.
|
||||
<P>
|
||||
|
||||
If a user attempts to exit
|
||||
<B>bash</B>
|
||||
|
||||
is made while jobs are stopped (or, if the <B>checkjobs</B> shell option has
|
||||
while jobs are stopped (or, if the <B>checkjobs</B> shell option has
|
||||
been enabled using the <B>shopt</B> builtin, running), the shell prints a
|
||||
warning message, and, if the <B>checkjobs</B> option is enabled, lists the
|
||||
jobs and their statuses.
|
||||
@@ -7556,14 +7600,16 @@ The
|
||||
<B>jobs</B>
|
||||
|
||||
command may then be used to inspect their status.
|
||||
If a second attempt to exit is made without an intervening command,
|
||||
the shell does not print another warning, and any stopped
|
||||
jobs are terminated.
|
||||
If the user immediately attempts to exit again,
|
||||
without an intervening command,
|
||||
<B>bash</B> does not print another warning, and
|
||||
terminates any stopped jobs.
|
||||
<P>
|
||||
|
||||
When the shell is waiting for a job or process using the <B>wait</B>
|
||||
builtin, and job control is enabled, <B>wait</B> will return when the
|
||||
job changes state. The <B>-f</B> option causes <B>wait</B> to wait
|
||||
job changes state.
|
||||
The <B>-f</B> option causes <B>wait</B> to wait
|
||||
until the job or process terminates before returning.
|
||||
<A NAME="lbCF"> </A>
|
||||
<H3>PROMPTING</H3>
|
||||
@@ -7964,7 +8010,7 @@ Key bindings may contain the following symbolic character names:
|
||||
|
||||
<I>RETURN</I>,
|
||||
|
||||
<I>RUBOUT</I>,
|
||||
<I>RUBOUT</I>(a<I>destructive</I>backspace),
|
||||
|
||||
<I>SPACE</I>,
|
||||
|
||||
@@ -9270,6 +9316,7 @@ Delete the character at point.
|
||||
If this function is bound to the
|
||||
same character as the tty <B>EOF</B> character, as <B>C-d</B>
|
||||
commonly is, see above for the effects.
|
||||
This may also be bound to the Delete key on some keyboards.
|
||||
<DT><B>backward-delete-char (Rubout)</B>
|
||||
|
||||
<DD>
|
||||
@@ -10733,11 +10780,11 @@ No effect; the command does nothing beyond expanding
|
||||
and performing any specified
|
||||
redirections.
|
||||
The return status is zero.
|
||||
<DT><B>. </B> [<B>-p</B> <I>path</I>] <I>filename</I> [<I>arguments</I>]<DD>
|
||||
<DT><B>.</B> [<B>-p</B> <I>path</I>] <I>filename</I> [<I>arguments</I>]<DD>
|
||||
|
||||
<DT><B>source</B> [<B>-p</B> <I>path</I>] <I>filename</I> [<I>arguments</I>]<DD>
|
||||
|
||||
The <B>. </B> command (<B>source</B>) reads and execute commands from
|
||||
The <B>.</B> command (<B>source</B>) reads and execute commands from
|
||||
<I>filename</I>
|
||||
|
||||
in the current shell environment and returns the exit status of the
|
||||
@@ -10745,10 +10792,10 @@ last command executed from
|
||||
<I>filename</I>.
|
||||
|
||||
<DT><DD>
|
||||
If <I>filename</I> does not contain a slash, <B>. </B> searchs for it.
|
||||
If the <B>-p</B> option is supplied, <B>. </B> treats <I>path</I>
|
||||
If <I>filename</I> does not contain a slash, <B>.</B> searches for it.
|
||||
If the <B>-p</B> option is supplied, <B>.</B> treats <I>path</I>
|
||||
as a colon-separated list of directories in which to find <I>filename</I>;
|
||||
otherwise, <B>. </B> uses the entries in
|
||||
otherwise, <B>.</B> uses the entries in
|
||||
<FONT SIZE=-1><B>PATH</B>
|
||||
|
||||
</FONT>
|
||||
@@ -10768,7 +10815,7 @@ If the
|
||||
option to the
|
||||
<B>shopt</B>
|
||||
|
||||
builtin command is turned off, <B>. </B> does not search
|
||||
builtin command is turned off, <B>.</B> does not search
|
||||
<FONT SIZE=-1><B>PATH</B>.
|
||||
|
||||
</FONT>
|
||||
@@ -10812,7 +10859,7 @@ had been started with
|
||||
If
|
||||
<I>jobspec</I>
|
||||
|
||||
is not present, the shell's notion of the <I>current job</I> is used.
|
||||
is not present, the shell uses its notion of the <I>current job</I>.
|
||||
<B>bg</B>
|
||||
|
||||
<I>jobspec</I>
|
||||
@@ -11854,22 +11901,20 @@ Without options, remove each
|
||||
|
||||
from the table of active jobs.
|
||||
Each <I>id</I> may be a job specification <I>jobspec</I>
|
||||
or a process ID
|
||||
<I>pid</I>; if <I>id</I> is a <I>pid</I>,
|
||||
or a process ID <I>pid</I>;
|
||||
if <I>id</I> is a <I>pid</I>,
|
||||
<B>disown</B> uses the job containing <I>pid</I> as <I>jobspec</I>.
|
||||
If
|
||||
<DT><DD>
|
||||
If the <B>-h</B> option is supplied,
|
||||
<B>disown</B> does not remove the jobs corresponding to each
|
||||
<I>id</I>
|
||||
|
||||
is not present, and neither the <B>-a</B> nor the <B>-r</B> option
|
||||
is supplied, <B>disown</B> removes the <I>current job</I>.
|
||||
If the <B>-h</B> option is supplied, the job corresponding to each
|
||||
<I>id</I>
|
||||
|
||||
is not removed from the table, but is marked so that
|
||||
from the jobs table,
|
||||
but rather marks them so the shell does not send
|
||||
<FONT SIZE=-1><B>SIGHUP</B>
|
||||
|
||||
</FONT>
|
||||
is not sent to the job if the shell receives a
|
||||
to the job if the shell receives a
|
||||
<FONT SIZE=-1><B>SIGHUP</B>.
|
||||
|
||||
</FONT>
|
||||
@@ -11886,7 +11931,12 @@ option means to remove or mark all jobs; the
|
||||
option without an
|
||||
<I>id</I>
|
||||
|
||||
argument restricts operation to running jobs.
|
||||
argument removes or marks running jobs.
|
||||
If no
|
||||
<I>id</I>
|
||||
|
||||
is supplied, and neither the <B>-a</B> nor the <B>-r</B> option
|
||||
is supplied, <B>disown</B> removes or marks the current job.
|
||||
<DT><DD>
|
||||
The return value is 0 unless an
|
||||
<I>id</I>
|
||||
@@ -12325,7 +12375,7 @@ in the foreground, and make it the current job.
|
||||
If
|
||||
<I>jobspec</I>
|
||||
|
||||
is not present, use the shell's notion of the <I>current job</I>.
|
||||
is not present, <B>fg</B> uses the shell's notion of the <I>current job</I>.
|
||||
The return value is that of the command placed into the foreground,
|
||||
or failure if run when job control is disabled or, when run with
|
||||
job control enabled, if
|
||||
@@ -12759,7 +12809,7 @@ passing it
|
||||
<I>args</I>,
|
||||
|
||||
returning its exit status.
|
||||
<DT><B>kill</B> [<B>-s</B> <I>sigspec</I> | <B>-n</B> <I>signum</I> | <B>-</B><I>sigspec</I>] [<I>pid</I> | <I>jobspec</I>] ...<DD>
|
||||
<DT><B>kill</B> [<B>-s</B> <I>sigspec</I> | <B>-n</B> <I>signum</I> | <B>-</B><I>sigspec</I>] <I>id</I> [ ... ]<DD>
|
||||
|
||||
<DT><B>kill</B> <B>-l</B>|<B>-L</B> [<I>sigspec</I> | <I>exit_status</I>]<DD>
|
||||
|
||||
@@ -12769,12 +12819,14 @@ Send the signal specified by
|
||||
or
|
||||
<I>signum</I>
|
||||
|
||||
to the processes named by
|
||||
<I>pid</I>
|
||||
to the processes named by each
|
||||
<I>id</I>.
|
||||
|
||||
or
|
||||
<I>jobspec</I>.
|
||||
Each
|
||||
<I>id</I>
|
||||
|
||||
may be a job specification <I>jobspec</I>
|
||||
or a process ID <I>pid</I>.
|
||||
<I>sigspec</I>
|
||||
|
||||
is either a case-insensitive signal name such as
|
||||
@@ -12800,10 +12852,10 @@ sends
|
||||
|
||||
</FONT>
|
||||
<DT><DD>
|
||||
An argument of
|
||||
The
|
||||
<B>-l</B>
|
||||
|
||||
lists the signal names.
|
||||
option lists the signal names.
|
||||
If any arguments are supplied when
|
||||
<B>-l</B>
|
||||
|
||||
@@ -12816,7 +12868,11 @@ The <I>exit_status</I> argument to
|
||||
<B>-l</B>
|
||||
|
||||
is a number specifying either a signal number or the exit status of
|
||||
a process terminated by a signal.
|
||||
a process terminated by a signal;
|
||||
if it is supplied, <B>kill</B> prints the name of the signal that caused
|
||||
the process to terminate.
|
||||
<B>kill</B> assumes that process exit statuses are greater than 128;
|
||||
anything less than that is a signal number.
|
||||
The
|
||||
<B>-L</B>
|
||||
|
||||
@@ -13719,7 +13775,7 @@ The effect is as if the shell command
|
||||
|
||||
had been executed
|
||||
(see
|
||||
<B>Shell Variables</B>
|
||||
<B>Shell Variables<</B>
|
||||
|
||||
|
||||
above).
|
||||
@@ -15522,8 +15578,9 @@ is readonly or may not be unset.
|
||||
<DT><B>wait</B> [<B>-fn</B>] [-p <I>varname</I>] [<I>id</I> ...]<DD>
|
||||
Wait for each specified child process <I>id</I> and return the
|
||||
termination status of the last <I>id</I>.
|
||||
Each <I>id</I> may be a process ID or a job specification;
|
||||
if a job spec is supplied, <B>wait</B> waits for all processes in the job.
|
||||
Each <I>id</I> may be a process ID <I>pid</I>
|
||||
or a job specification <I>jobspec</I>;
|
||||
if a jobspec is supplied, <B>wait</B> waits for all processes in the job.
|
||||
<DT><DD>
|
||||
If no options or <I>id</I>s are supplied,
|
||||
<B>wait</B> waits for all running background jobs and
|
||||
@@ -15532,20 +15589,21 @@ if its process id is the same as <B>$!</B>,
|
||||
and the return status is zero.
|
||||
<DT><DD>
|
||||
If the <B>-n</B> option is supplied, <B>wait</B> waits for any one of
|
||||
the given <I>id</I>s or, if no <I>id</I>s are supplied, any job
|
||||
or process substitution,
|
||||
the given <I>id</I>s or,
|
||||
if no <I>id</I>s are supplied, any job or process substitution,
|
||||
to complete and returns its exit status.
|
||||
If none of the supplied <I>id</I>s is a child of the shell,
|
||||
or if no <I>id</I>s are supplied and the shell has no unwaited-for children,
|
||||
the exit status is 127.
|
||||
<DT><DD>
|
||||
If the <B>-p</B> option is supplied, the process or job identifier
|
||||
of the job for which the exit status is returned is assigned to the
|
||||
If the <B>-p</B> option is supplied, <B>wait</B> assigns
|
||||
the process or job identifier of the job
|
||||
for which the exit status is returned to the
|
||||
variable <I>varname</I> named by the option argument.
|
||||
The variable,
|
||||
which cannot be readonly,
|
||||
will be unset initially, before any assignment.
|
||||
This is useful only when the <B>-n</B> option is supplied.
|
||||
This is useful only when used with the <B>-n</B> option.
|
||||
<DT><DD>
|
||||
Supplying the <B>-f</B> option, when job control is enabled,
|
||||
forces <B>wait</B> to wait for each <I>id</I> to terminate before
|
||||
@@ -16165,7 +16223,7 @@ Array variables may not (yet) be exported.
|
||||
<HR>
|
||||
<TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.3<TH ALIGN=CENTER width=33%>2024 October 10<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.3<TH ALIGN=CENTER width=33%>2024 October 14<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<HR>
|
||||
@@ -16274,7 +16332,7 @@ Array variables may not (yet) be exported.
|
||||
<DT><A HREF="#lbDJ">BUGS</A><DD>
|
||||
</DL>
|
||||
<HR>
|
||||
This document was created by man2html from /usr/local/src/bash/bash-20241007/doc/bash.1.<BR>
|
||||
Time: 10 October 2024 17:47:42 EDT
|
||||
This document was created by man2html from /usr/local/src/bash/bash-20241012/doc/bash.1.<BR>
|
||||
Time: 14 October 2024 17:00:24 EDT
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
||||
+268
-241
@@ -1,9 +1,9 @@
|
||||
This is bash.info, produced by makeinfo version 7.1 from bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.3, 10 October 2024).
|
||||
Bash shell (version 5.3, 14 October 2024).
|
||||
|
||||
This is Edition 5.3, last updated 10 October 2024, of ‘The GNU Bash
|
||||
This is Edition 5.3, last updated 14 October 2024, of ‘The GNU Bash
|
||||
Reference Manual’, for ‘Bash’, Version 5.3.
|
||||
|
||||
Copyright © 1988-2024 Free Software Foundation, Inc.
|
||||
@@ -26,10 +26,10 @@ Bash Features
|
||||
*************
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.3, 10 October 2024). The Bash home page is
|
||||
Bash shell (version 5.3, 14 October 2024). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.3, last updated 10 October 2024, of ‘The GNU Bash
|
||||
This is Edition 5.3, last updated 14 October 2024, of ‘The GNU Bash
|
||||
Reference Manual’, for ‘Bash’, Version 5.3.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -1774,7 +1774,7 @@ replaced with the corresponding element from the directory stack, as it
|
||||
would be displayed by the ‘dirs’ builtin invoked with the characters
|
||||
following tilde in the tilde-prefix as an argument (*note The Directory
|
||||
Stack::). If the tilde-prefix, sans the tilde, consists of a number
|
||||
without a leading ‘+’ or ‘-’, ‘+’ is assumed.
|
||||
without a leading ‘+’ or ‘-’, tilde expansion assumes ‘+’.
|
||||
|
||||
The results of tilde expansion are treated as if they were quoted, so
|
||||
the replacement is not subject to word splitting and filename expansion.
|
||||
@@ -1904,12 +1904,12 @@ omitted, the operator tests only for existence.
|
||||
DEFAULT
|
||||
|
||||
‘${PARAMETER:?WORD}’
|
||||
If PARAMETER is null or unset, the expansion of WORD (or a message
|
||||
to that effect if WORD is not present) is written to the standard
|
||||
error and the shell, if it is not interactive, exits with a
|
||||
non-zero status. An interactive shell does not exit, but does not
|
||||
execute the command associated with the expansion. Otherwise, the
|
||||
value of PARAMETER is substituted.
|
||||
If PARAMETER is null or unset, the shell writes the expansion of
|
||||
WORD (or a message to that effect if WORD is not present) to the
|
||||
standard error and, if it is not interactive, exits with a non-zero
|
||||
status. An interactive shell does not exit, but does not execute
|
||||
the command associated with the expansion. Otherwise, the value of
|
||||
PARAMETER is substituted.
|
||||
|
||||
$ var=
|
||||
$ : ${var:?var is unset or null}
|
||||
@@ -7071,15 +7071,17 @@ all lines that make up a compound command, before executing any of the
|
||||
commands on that line or the compound command. Aliases are expanded
|
||||
when a command is read, not when it is executed. Therefore, an alias
|
||||
definition appearing on the same line as another command does not take
|
||||
effect until the shell reads the next line of input. The commands
|
||||
following the alias definition on that line are not affected by the new
|
||||
alias. This behavior is also an issue when functions are executed.
|
||||
Aliases are expanded when a function definition is read, not when the
|
||||
function is executed, because a function definition is itself a command.
|
||||
As a consequence, aliases defined in a function are not available until
|
||||
after that function is executed. To be safe, always put alias
|
||||
definitions on a separate line, and do not use ‘alias’ in compound
|
||||
commands.
|
||||
effect until the shell reads the next line of input, and an alias
|
||||
definition in a compound command does not take effect until the shell
|
||||
parses and executes the entire compound command. The commands following
|
||||
the alias definition on that line, or in the rest of a compound command,
|
||||
are not affected by the new alias. This behavior is also an issue when
|
||||
functions are executed. Aliases are expanded when a function definition
|
||||
is read, not when the function is executed, because a function
|
||||
definition is itself a command. As a consequence, aliases defined in a
|
||||
function are not available until after that function is executed. To be
|
||||
safe, always put alias definitions on a separate line, and do not use
|
||||
‘alias’ in compound commands.
|
||||
|
||||
For almost every purpose, shell functions are preferred over aliases.
|
||||
|
||||
@@ -8065,8 +8067,10 @@ interface supplied jointly by the operating system kernel's terminal
|
||||
driver and Bash.
|
||||
|
||||
The shell associates a JOB with each pipeline. It keeps a table of
|
||||
currently executing jobs, which may be listed with the ‘jobs’ command.
|
||||
When Bash starts a job asynchronously, it prints a line that looks like:
|
||||
currently executing jobs, which the ‘jobs’ command will display. Each
|
||||
job has a “job number”, which ‘jobs’ displays between brackets. Job
|
||||
numbers start at 1. When Bash starts a job asynchronously, it prints a
|
||||
line that looks like:
|
||||
[1] 25647
|
||||
indicating that this job is job number 1 and that the process ID of the
|
||||
last process in the pipeline associated with this job is 25647. All of
|
||||
@@ -8074,72 +8078,85 @@ the processes in a single pipeline are members of the same job. Bash
|
||||
uses the JOB abstraction as the basis for job control.
|
||||
|
||||
To facilitate the implementation of the user interface to job
|
||||
control, the operating system maintains the notion of a current terminal
|
||||
process group ID. Members of this process group (processes whose
|
||||
process group ID is equal to the current terminal process group ID)
|
||||
receive keyboard-generated signals such as ‘SIGINT’. These processes
|
||||
are said to be in the foreground. Background processes are those whose
|
||||
process group ID differs from the terminal's; such processes are immune
|
||||
to keyboard-generated signals. Only foreground processes are allowed to
|
||||
read from or, if the user so specifies with ‘stty tostop’, write to the
|
||||
terminal. Background processes which attempt to read from (write to
|
||||
when ‘tostop’ is in effect) the terminal are sent a ‘SIGTTIN’
|
||||
(‘SIGTTOU’) signal by the kernel's terminal driver, which, unless
|
||||
caught, suspends the process.
|
||||
control, each process has a “process group ID”, and the operating system
|
||||
maintains the notion of a current terminal process group ID. Processes
|
||||
that have the same process group ID are said to be part of the same
|
||||
“process group”. Members of the foreground process group (processes
|
||||
whose process group ID is equal to the current terminal process group
|
||||
ID) receive keyboard-generated signals such as ‘SIGINT’. Processes in
|
||||
the foreground process group are said to be foreground processes.
|
||||
Background processes are those whose process group ID differs from the
|
||||
terminal's; such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if the user so
|
||||
specifies with ‘stty tostop’, write to the terminal. Background
|
||||
processes which attempt to read from (write to when ‘tostop’ is in
|
||||
effect) the terminal are sent a ‘SIGTTIN’ (‘SIGTTOU’) signal by the
|
||||
kernel's terminal driver, which, unless caught, suspends the process.
|
||||
|
||||
If the operating system on which Bash is running supports job
|
||||
control, Bash contains facilities to use it. Typing the “suspend”
|
||||
character (typically ‘^Z’, Control-Z) while a process is running causes
|
||||
that process to be stopped and returns control to Bash. Typing the
|
||||
“delayed suspend” character (typically ‘^Y’, Control-Y) causes the
|
||||
process to be stopped when it attempts to read input from the terminal,
|
||||
and control to be returned to Bash. The user then manipulates the state
|
||||
of this job, using the ‘bg’ command to continue it in the background,
|
||||
the ‘fg’ command to continue it in the foreground, or the ‘kill’ command
|
||||
to kill it. A ‘^Z’ takes effect immediately, and has the additional
|
||||
side effect of causing pending output and typeahead to be discarded.
|
||||
character (typically ‘^Z’, Control-Z) while a process is running stops
|
||||
that process and returns control to Bash. Typing the “delayed suspend”
|
||||
character (typically ‘^Y’, Control-Y) causes the process to stop when it
|
||||
attempts to read input from the terminal, and returns control to Bash.
|
||||
The user then manipulates the state of this job, using the ‘bg’ command
|
||||
to continue it in the background, the ‘fg’ command to continue it in the
|
||||
foreground, or the ‘kill’ command to kill it. The suspend character
|
||||
takes effect immediately, and has the additional side effect of
|
||||
discarding any pending output and typeahead. If you want to force a
|
||||
background process to stop, or stop a process that's not associated with
|
||||
your terminal session, send it the ‘SIGSTOP’ signal using ‘kill’.
|
||||
|
||||
There are a number of ways to refer to a job in the shell. The
|
||||
character ‘%’ introduces a job specification (“jobspec”).
|
||||
There are a number of ways to refer to a job in the shell. The ‘%’
|
||||
character introduces a “job specification” (jobspec).
|
||||
|
||||
Job number ‘n’ may be referred to as ‘%n’. The symbols ‘%%’ and ‘%+’
|
||||
refer to the shell's notion of the current job, which is the last job
|
||||
stopped while it was in the foreground or started in the background. A
|
||||
single ‘%’ (with no accompanying job specification) also refers to the
|
||||
current job. The previous job may be referenced using ‘%-’. If there
|
||||
is only a single job, ‘%+’ and ‘%-’ can both be used to refer to that
|
||||
job. In output pertaining to jobs (e.g., the output of the ‘jobs’
|
||||
command), the current job is always flagged with a ‘+’, and the previous
|
||||
job with a ‘-’.
|
||||
Job number ‘n’ may be referred to as ‘%n’. A job may also be
|
||||
referred to using a prefix of the name used to start it, or using a
|
||||
substring that appears in its command line. For example, ‘%ce’ refers
|
||||
to a job whose command name begins with ‘ce’. Using ‘%?ce’, on the
|
||||
other hand, refers to any job containing the string ‘ce’ in its command
|
||||
line. If the prefix or substring matches more than one job, Bash
|
||||
reports an error.
|
||||
|
||||
A job may also be referred to using a prefix of the name used to
|
||||
start it, or using a substring that appears in its command line. For
|
||||
example, ‘%ce’ refers to a stopped job whose command name begins with
|
||||
‘ce’. Using ‘%?ce’, on the other hand, refers to any job containing the
|
||||
string ‘ce’ in its command line. If the prefix or substring matches
|
||||
more than one job, Bash reports an error.
|
||||
The symbols ‘%%’ and ‘%+’ refer to the shell's notion of the “current
|
||||
job”. A single ‘%’ (with no accompanying job specification) also refers
|
||||
to the current job. ‘%-’ refers to the “previous job”. When a job
|
||||
starts in the background, a job stops while in the foreground, or a job
|
||||
is resumed in the background, it becomes the current job. The job that
|
||||
was the current job becomes the previous job. When the current job
|
||||
terminates, the previous job becomes the current job. If there is only
|
||||
a single job, ‘%+’ and ‘%-’ can both be used to refer to that job. In
|
||||
output pertaining to jobs (e.g., the output of the ‘jobs’ command), the
|
||||
current job is always marked with a ‘+’, and the previous job with a
|
||||
‘-’.
|
||||
|
||||
Simply naming a job can be used to bring it into the foreground: ‘%1’
|
||||
is a synonym for ‘fg %1’, bringing job 1 from the background into the
|
||||
foreground. Similarly, ‘%1 &’ resumes job 1 in the background,
|
||||
equivalent to ‘bg %1’
|
||||
equivalent to ‘bg %1’.
|
||||
|
||||
The shell learns immediately whenever a job changes state. Normally,
|
||||
Bash waits until it is about to print a prompt before reporting changes
|
||||
in a job's status so as to not interrupt any other output, though it
|
||||
will notify of changes in a job's status after a foreground command in a
|
||||
list completes, before executing the next command. If the ‘-b’ option
|
||||
to the ‘set’ builtin is enabled, Bash reports such changes immediately
|
||||
(*note The Set Builtin::). Any trap on ‘SIGCHLD’ is executed for each
|
||||
child process that exits.
|
||||
Bash waits until it is about to print a prompt before notifying the user
|
||||
about changes in a job's status so as to not interrupt any other output,
|
||||
though it will notify of changes in a job's status after a foreground
|
||||
command in a list completes, before executing the next command in the
|
||||
list. If the ‘-b’ option to the ‘set’ builtin is enabled, Bash reports
|
||||
such changes immediately (*note The Set Builtin::). Bash executes any
|
||||
trap on ‘SIGCHLD’ for each child process that terminates.
|
||||
|
||||
If an attempt to exit Bash is made while jobs are stopped, (or
|
||||
running, if the ‘checkjobs’ option is enabled - see *note The Shopt
|
||||
Builtin::), the shell prints a warning message, and if the ‘checkjobs’
|
||||
option is enabled, lists the jobs and their statuses. The ‘jobs’
|
||||
command may then be used to inspect their status. If a second attempt
|
||||
to exit is made without an intervening command, Bash does not print
|
||||
another warning, and any stopped jobs are terminated.
|
||||
When a job terminates and Bash notifies the user about it, Bash
|
||||
removes the job from the jobs table. It will not appear in ‘jobs’
|
||||
output, but ‘wait’ will report its exit status, as long as it's supplied
|
||||
the process ID associated with the job as an argument. When the table
|
||||
is empty, job numbers start over at 1.
|
||||
|
||||
If a user attempts to exit Bash while jobs are stopped, (or running,
|
||||
if the ‘checkjobs’ option is enabled - see *note The Shopt Builtin::),
|
||||
the shell prints a warning message, and if the ‘checkjobs’ option is
|
||||
enabled, lists the jobs and their statuses. The ‘jobs’ command may then
|
||||
be used to inspect their status. If the user immediately attempts to
|
||||
exit again, without an intervening command, Bash does not print another
|
||||
warning, and terminates any stopped jobs.
|
||||
|
||||
When the shell is waiting for a job or process using the ‘wait’
|
||||
builtin, and job control is enabled, ‘wait’ will return when the job
|
||||
@@ -8156,21 +8173,22 @@ File: bash.info, Node: Job Control Builtins, Next: Job Control Variables, Pre
|
||||
bg [JOBSPEC ...]
|
||||
|
||||
Resume each suspended job JOBSPEC in the background, as if it had
|
||||
been started with ‘&’. If JOBSPEC is not supplied, the current job
|
||||
is used. The return status is zero unless it is run when job
|
||||
control is not enabled, or, when run with job control enabled, any
|
||||
JOBSPEC was not found or specifies a job that was started without
|
||||
job control.
|
||||
been started with ‘&’. If JOBSPEC is not supplied, the shell uses
|
||||
its notion of the current job. ‘bg’ returns zero unless it is run
|
||||
when job control is not enabled, or, when run with job control
|
||||
enabled, any JOBSPEC was not found or specifies a job that was
|
||||
started without job control.
|
||||
|
||||
‘fg’
|
||||
fg [JOBSPEC]
|
||||
|
||||
Resume the job JOBSPEC in the foreground and make it the current
|
||||
job. If JOBSPEC is not supplied, resume the current job. The
|
||||
return status is that of the command placed into the foreground, or
|
||||
non-zero if run when job control is disabled or, when run with job
|
||||
control enabled, JOBSPEC does not specify a valid job or JOBSPEC
|
||||
specifies a job that was started without job control.
|
||||
job. If JOBSPEC is not supplied, ‘fg’ resumes the current job.
|
||||
The return status is that of the command placed into the
|
||||
foreground, or non-zero if run when job control is disabled or,
|
||||
when run with job control enabled, JOBSPEC does not specify a valid
|
||||
job or JOBSPEC specifies a job that was started without job
|
||||
control.
|
||||
|
||||
‘jobs’
|
||||
jobs [-lnprs] [JOBSPEC]
|
||||
@@ -8197,7 +8215,8 @@ File: bash.info, Node: Job Control Builtins, Next: Job Control Variables, Pre
|
||||
|
||||
If JOBSPEC is supplied, ‘jobs’ restricts output to information
|
||||
about that job. If JOBSPEC is not supplied, ‘jobs’ lists the
|
||||
status of all jobs.
|
||||
status of all jobs. The return status is zero unless an invalid
|
||||
option is encountered or an invalid JOBSPEC is supplied.
|
||||
|
||||
If the ‘-x’ option is supplied, ‘jobs’ replaces any JOBSPEC found
|
||||
in COMMAND or ARGUMENTS with the corresponding process group ID,
|
||||
@@ -8205,21 +8224,25 @@ File: bash.info, Node: Job Control Builtins, Next: Job Control Variables, Pre
|
||||
status.
|
||||
|
||||
‘kill’
|
||||
kill [-s SIGSPEC] [-n SIGNUM] [-SIGSPEC] JOBSPEC or PID
|
||||
kill [-s SIGSPEC] [-n SIGNUM] [-SIGSPEC] ID [...]
|
||||
kill -l|-L [EXIT_STATUS]
|
||||
|
||||
Send a signal specified by SIGSPEC or SIGNUM to the process named
|
||||
by job specification JOBSPEC or process ID PID. SIGSPEC is either
|
||||
a case-insensitive signal name such as ‘SIGINT’ (with or without
|
||||
the ‘SIG’ prefix) or a signal number; SIGNUM is a signal number.
|
||||
If SIGSPEC and SIGNUM are not present, ‘kill’ sends ‘SIGTERM’.
|
||||
Send a signal specified by SIGSPEC or SIGNUM to the processes named
|
||||
by each ID. Each ID may be a job specification JOBSPEC or process
|
||||
ID PID. SIGSPEC is either a case-insensitive signal name such as
|
||||
‘SIGINT’ (with or without the ‘SIG’ prefix) or a signal number;
|
||||
SIGNUM is a signal number. If SIGSPEC and SIGNUM are not present,
|
||||
‘kill’ sends ‘SIGTERM’.
|
||||
|
||||
The ‘-l’ option lists the signal names. If any arguments are
|
||||
supplied when ‘-l’ is supplied, the names of the signals
|
||||
corresponding to the arguments are listed, and the return status is
|
||||
supplied when ‘-l’ is supplied, ‘kill’ lists the names of the
|
||||
signals corresponding to the arguments, and the return status is
|
||||
zero. EXIT_STATUS is a number specifying a signal number or the
|
||||
exit status of a process terminated by a signal. The ‘-L’ option
|
||||
is equivalent to ‘-l’.
|
||||
exit status of a process terminated by a signal; if it is supplied,
|
||||
‘kill’ prints the name of the signal that caused the process to
|
||||
terminate. ‘kill’ assumes that process exit statuses are greater
|
||||
than 128; anything less than that is a signal number. The ‘-L’
|
||||
option is equivalent to ‘-l’.
|
||||
|
||||
The return status is zero if at least one signal was successfully
|
||||
sent, or non-zero if an error occurs or an invalid option is
|
||||
@@ -8229,9 +8252,9 @@ File: bash.info, Node: Job Control Builtins, Next: Job Control Variables, Pre
|
||||
wait [-fn] [-p VARNAME] [ID ...]
|
||||
|
||||
Wait until the child process specified by each ID exits and return
|
||||
the exit status of the last ID. Each ID may be a PID or job
|
||||
specification JOBSPEC; if a job spec is supplied, ‘wait’ waits for
|
||||
all processes in the job.
|
||||
the exit status of the last ID. Each ID may be a process ID PID or
|
||||
a job specification JOBSPEC; if a jobspec is supplied, ‘wait’ waits
|
||||
for all processes in the job.
|
||||
|
||||
If no options or IDs are supplied, ‘wait’ waits for all running
|
||||
background jobs and the last-executed process substitution, if its
|
||||
@@ -8243,11 +8266,11 @@ File: bash.info, Node: Job Control Builtins, Next: Job Control Variables, Pre
|
||||
is a child of the shell, or if no arguments are supplied and the
|
||||
shell has no unwaited-for children, the exit status is 127.
|
||||
|
||||
If the ‘-p’ option is supplied, the process or job identifier of
|
||||
the job for which the exit status is returned is assigned to the
|
||||
If the ‘-p’ option is supplied, ‘wait’ assigns the process or job
|
||||
identifier of the job for which the exit status is returned to the
|
||||
variable VARNAME named by the option argument. The variable, which
|
||||
cannot be readonly, will be unset initially, before any assignment.
|
||||
This is useful only when the ‘-n’ option is supplied.
|
||||
This is useful only when used with the ‘-n’ option.
|
||||
|
||||
Supplying the ‘-f’ option, when job control is enabled, forces
|
||||
‘wait’ to wait for each ID to terminate before returning its
|
||||
@@ -8263,16 +8286,18 @@ File: bash.info, Node: Job Control Builtins, Next: Job Control Variables, Pre
|
||||
disown [-ar] [-h] [ID ...]
|
||||
|
||||
Without options, remove each ID from the table of active jobs.
|
||||
Each ID may be a PID or job specification JOBSPEC; if ID is a PID,
|
||||
‘disown’ uses the job containing PID. If the ‘-h’ option is
|
||||
supplied, the job is not removed from the table, but is marked so
|
||||
that ‘SIGHUP’ is not sent to the job if the shell receives a
|
||||
‘SIGHUP’. If ID is not present, and neither the ‘-a’ nor the ‘-r’
|
||||
option is supplied, ‘disown’ removes the current job.
|
||||
Each ID may be a job specification JOBSPEC or a process ID PID; if
|
||||
ID is a PID, ‘disown’ uses the job containing PID as JOBSPEC.
|
||||
|
||||
If the ‘-h’ option is supplied, ‘disown’ does not remove the jobs
|
||||
corresponding to each ‘id’ from the jobs table, but rather marks
|
||||
them so the shell does not send ‘SIGHUP’ to the job if the shell
|
||||
receives a ‘SIGHUP’.
|
||||
|
||||
If no ID is supplied, the ‘-a’ option means to remove or mark all
|
||||
jobs; the ‘-r’ option without an ID argument restricts operation to
|
||||
running jobs.
|
||||
jobs; the ‘-r’ option without an ID argument removes or marks
|
||||
running jobs. If no ID is supplied, and neither the ‘-a’ nor the
|
||||
‘-r’ option is supplied, ‘disown’ removes or marks the current job.
|
||||
|
||||
The return value is 0 unless an ID does not specify a valid job.
|
||||
|
||||
@@ -8296,19 +8321,20 @@ File: bash.info, Node: Job Control Variables, Prev: Job Control Builtins, Up:
|
||||
|
||||
‘auto_resume’
|
||||
This variable controls how the shell interacts with the user and
|
||||
job control. If this variable exists then single-word simple
|
||||
commands without redirections are treated as candidates for
|
||||
resumption of an existing job. There is no ambiguity allowed; if
|
||||
there is more than one job beginning with the string typed, then
|
||||
the most recently accessed job is selected. The name of a stopped
|
||||
job, in this context, is the command line used to start it. If
|
||||
this variable is set to the value ‘exact’, the string supplied must
|
||||
match the name of a stopped job exactly; if set to ‘substring’, the
|
||||
string supplied needs to match a substring of the name of a stopped
|
||||
job. The ‘substring’ value provides functionality analogous to the
|
||||
‘%?’ job ID (*note Job Control Basics::). If set to any other
|
||||
value, the supplied string must be a prefix of a stopped job's
|
||||
name; this provides functionality analogous to the ‘%’ job ID.
|
||||
job control. If this variable exists then simple commands
|
||||
consisting of only a single word, without redirections, are treated
|
||||
as candidates for resumption of an existing job. There is no
|
||||
ambiguity allowed; if there is more than one job beginning with or
|
||||
containing the word, then this selects the most recently accessed
|
||||
job. The name of a stopped job, in this context, is the command
|
||||
line used to start it, as displayed by ‘jobs’. If this variable is
|
||||
set to the value ‘exact’, the word must match the name of a stopped
|
||||
job exactly; if set to ‘substring’, the word needs to match a
|
||||
substring of the name of a stopped job. The ‘substring’ value
|
||||
provides functionality analogous to the ‘%?string’ job ID (*note
|
||||
Job Control Basics::). If set to any other value (e.g., ‘prefix’),
|
||||
the word must be a prefix of a stopped job's name; this provides
|
||||
functionality analogous to the ‘%string’ job ID.
|
||||
|
||||
|
||||
File: bash.info, Node: Command Line Editing, Next: Using History Interactively, Prev: Job Control, Up: Top
|
||||
@@ -9090,7 +9116,7 @@ Key Bindings
|
||||
|
||||
This key binding syntax recognizes a number of symbolic
|
||||
character names: DEL, ESC, ESCAPE, LFD, NEWLINE, RET, RETURN,
|
||||
RUBOUT, SPACE, SPC, and TAB.
|
||||
RUBOUT (a destructive backspace), SPACE, SPC, and TAB.
|
||||
|
||||
"KEYSEQ": FUNCTION-NAME or MACRO
|
||||
KEYSEQ differs from KEYNAME above in that strings denoting an
|
||||
@@ -9582,7 +9608,8 @@ File: bash.info, Node: Commands For Text, Next: Commands For Killing, Prev: C
|
||||
‘delete-char (C-d)’
|
||||
Delete the character at point. If this function is bound to the
|
||||
same character as the tty EOF character, as ‘C-d’ commonly is, see
|
||||
above for the effects.
|
||||
above for the effects. This may also be bound to the Delete key on
|
||||
some keyboards.
|
||||
|
||||
‘backward-delete-char (Rubout)’
|
||||
Delete the character behind the cursor. A numeric argument means
|
||||
@@ -12642,7 +12669,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* dirs: Directory Stack Builtins.
|
||||
(line 7)
|
||||
* disown: Job Control Builtins.
|
||||
(line 114)
|
||||
(line 120)
|
||||
* echo: Bash Builtins. (line 284)
|
||||
* enable: Bash Builtins. (line 337)
|
||||
* eval: Bourne Shell Builtins.
|
||||
@@ -12667,9 +12694,9 @@ D.1 Index of Shell Builtin Commands
|
||||
* history: Bash History Builtins.
|
||||
(line 59)
|
||||
* jobs: Job Control Builtins.
|
||||
(line 27)
|
||||
(line 28)
|
||||
* kill: Job Control Builtins.
|
||||
(line 59)
|
||||
(line 61)
|
||||
* let: Bash Builtins. (line 394)
|
||||
* local: Bash Builtins. (line 403)
|
||||
* logout: Bash Builtins. (line 428)
|
||||
@@ -12693,7 +12720,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* shopt: The Shopt Builtin. (line 9)
|
||||
* source: Bash Builtins. (line 668)
|
||||
* suspend: Job Control Builtins.
|
||||
(line 131)
|
||||
(line 139)
|
||||
* test: Bourne Shell Builtins.
|
||||
(line 333)
|
||||
* times: Bourne Shell Builtins.
|
||||
@@ -12711,7 +12738,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* unset: Bourne Shell Builtins.
|
||||
(line 528)
|
||||
* wait: Job Control Builtins.
|
||||
(line 80)
|
||||
(line 86)
|
||||
|
||||
|
||||
File: bash.info, Node: Reserved Word Index, Next: Variable Index, Prev: Builtin Index, Up: Indexes
|
||||
@@ -13021,7 +13048,7 @@ D.4 Function Index
|
||||
* alias-expand-line (): Miscellaneous Commands.
|
||||
(line 133)
|
||||
* backward-char (C-b): Commands For Moving. (line 17)
|
||||
* backward-delete-char (Rubout): Commands For Text. (line 17)
|
||||
* backward-delete-char (Rubout): Commands For Text. (line 18)
|
||||
* backward-kill-line (C-x Rubout): Commands For Killing.
|
||||
(line 11)
|
||||
* backward-kill-word (M-<DEL>): Commands For Killing.
|
||||
@@ -13030,9 +13057,9 @@ D.4 Function Index
|
||||
* beginning-of-history (M-<): Commands For History.
|
||||
(line 20)
|
||||
* beginning-of-line (C-a): Commands For Moving. (line 6)
|
||||
* bracketed-paste-begin (): Commands For Text. (line 34)
|
||||
* bracketed-paste-begin (): Commands For Text. (line 35)
|
||||
* call-last-kbd-macro (C-x e): Keyboard Macros. (line 13)
|
||||
* capitalize-word (M-c): Commands For Text. (line 72)
|
||||
* capitalize-word (M-c): Commands For Text. (line 73)
|
||||
* character-search (C-]): Miscellaneous Commands.
|
||||
(line 41)
|
||||
* character-search-backward (M-C-]): Miscellaneous Commands.
|
||||
@@ -13071,7 +13098,7 @@ D.4 Function Index
|
||||
(line 147)
|
||||
* do-lowercase-version (M-A, M-B, M-X, ...): Miscellaneous Commands.
|
||||
(line 14)
|
||||
* downcase-word (M-l): Commands For Text. (line 68)
|
||||
* downcase-word (M-l): Commands For Text. (line 69)
|
||||
* dump-functions (): Miscellaneous Commands.
|
||||
(line 71)
|
||||
* dump-macros (): Miscellaneous Commands.
|
||||
@@ -13093,7 +13120,7 @@ D.4 Function Index
|
||||
(line 90)
|
||||
* fetch-history (): Commands For History.
|
||||
(line 106)
|
||||
* forward-backward-delete-char (): Commands For Text. (line 22)
|
||||
* forward-backward-delete-char (): Commands For Text. (line 23)
|
||||
* forward-char (C-f): Commands For Moving. (line 14)
|
||||
* forward-search-history (C-s): Commands For History.
|
||||
(line 33)
|
||||
@@ -13145,7 +13172,7 @@ D.4 Function Index
|
||||
(line 39)
|
||||
* operate-and-get-next (C-o): Commands For History.
|
||||
(line 99)
|
||||
* overwrite-mode (): Commands For Text. (line 76)
|
||||
* overwrite-mode (): Commands For Text. (line 77)
|
||||
* possible-command-completions (C-x !): Commands For Completion.
|
||||
(line 87)
|
||||
* possible-completions (M-?): Commands For Completion.
|
||||
@@ -13164,7 +13191,7 @@ D.4 Function Index
|
||||
(line 13)
|
||||
* previous-screen-line (): Commands For Moving. (line 36)
|
||||
* print-last-kbd-macro (): Keyboard Macros. (line 17)
|
||||
* quoted-insert (C-q or C-v): Commands For Text. (line 27)
|
||||
* quoted-insert (C-q or C-v): Commands For Text. (line 28)
|
||||
* re-read-init-file (C-x C-r): Miscellaneous Commands.
|
||||
(line 6)
|
||||
* redraw-current-line (): Commands For Moving. (line 59)
|
||||
@@ -13172,7 +13199,7 @@ D.4 Function Index
|
||||
(line 27)
|
||||
* revert-line (M-r): Miscellaneous Commands.
|
||||
(line 26)
|
||||
* self-insert (a, b, A, 1, !, ...): Commands For Text. (line 31)
|
||||
* self-insert (a, b, A, 1, !, ...): Commands For Text. (line 32)
|
||||
* set-mark (C-@): Miscellaneous Commands.
|
||||
(line 33)
|
||||
* shell-backward-kill-word (): Commands For Killing.
|
||||
@@ -13183,7 +13210,7 @@ D.4 Function Index
|
||||
* shell-forward-word (M-C-f): Commands For Moving. (line 28)
|
||||
* shell-kill-word (M-C-d): Commands For Killing.
|
||||
(line 32)
|
||||
* shell-transpose-words (M-C-t): Commands For Text. (line 57)
|
||||
* shell-transpose-words (M-C-t): Commands For Text. (line 58)
|
||||
* skip-csi-sequence (): Miscellaneous Commands.
|
||||
(line 50)
|
||||
* spell-correct-word (C-x s): Miscellaneous Commands.
|
||||
@@ -13191,8 +13218,8 @@ D.4 Function Index
|
||||
* start-kbd-macro (C-x (): Keyboard Macros. (line 6)
|
||||
* tilde-expand (M-&): Miscellaneous Commands.
|
||||
(line 30)
|
||||
* transpose-chars (C-t): Commands For Text. (line 46)
|
||||
* transpose-words (M-t): Commands For Text. (line 52)
|
||||
* transpose-chars (C-t): Commands For Text. (line 47)
|
||||
* transpose-words (M-t): Commands For Text. (line 53)
|
||||
* undo (C-_ or C-x C-u): Miscellaneous Commands.
|
||||
(line 23)
|
||||
* universal-argument (): Numeric Arguments. (line 10)
|
||||
@@ -13202,7 +13229,7 @@ D.4 Function Index
|
||||
(line 16)
|
||||
* unix-word-rubout (C-w): Commands For Killing.
|
||||
(line 41)
|
||||
* upcase-word (M-u): Commands For Text. (line 64)
|
||||
* upcase-word (M-u): Commands For Text. (line 65)
|
||||
* yank (C-y): Commands For Killing.
|
||||
(line 72)
|
||||
* yank-last-arg (M-. or M-_): Commands For History.
|
||||
@@ -13355,7 +13382,7 @@ D.5 Concept Index
|
||||
* quoting: Quoting. (line 6)
|
||||
* quoting, ANSI: ANSI-C Quoting. (line 6)
|
||||
* Readline, how to use: Job Control Variables.
|
||||
(line 22)
|
||||
(line 23)
|
||||
* redirection: Redirections. (line 6)
|
||||
* reserved word: Definitions. (line 70)
|
||||
* reserved words: Reserved Words. (line 6)
|
||||
@@ -13424,104 +13451,104 @@ Node: Special Parameters70300
|
||||
Node: Shell Expansions73761
|
||||
Node: Brace Expansion75950
|
||||
Node: Tilde Expansion78678
|
||||
Node: Shell Parameter Expansion81620
|
||||
Node: Command Substitution101392
|
||||
Node: Arithmetic Expansion104925
|
||||
Node: Process Substitution105938
|
||||
Node: Word Splitting107054
|
||||
Node: Filename Expansion109151
|
||||
Node: Pattern Matching112419
|
||||
Node: Quote Removal117753
|
||||
Node: Redirections118057
|
||||
Node: Executing Commands128272
|
||||
Node: Simple Command Expansion128939
|
||||
Node: Command Search and Execution131047
|
||||
Node: Command Execution Environment133491
|
||||
Node: Environment136939
|
||||
Node: Exit Status138842
|
||||
Node: Signals140900
|
||||
Node: Shell Scripts144798
|
||||
Node: Shell Builtin Commands148096
|
||||
Node: Bourne Shell Builtins150207
|
||||
Node: Bash Builtins176508
|
||||
Node: Modifying Shell Behavior212956
|
||||
Node: The Set Builtin213298
|
||||
Node: The Shopt Builtin225234
|
||||
Node: Special Builtins242286
|
||||
Node: Shell Variables243275
|
||||
Node: Bourne Shell Variables243709
|
||||
Node: Bash Variables246217
|
||||
Node: Bash Features284474
|
||||
Node: Invoking Bash285488
|
||||
Node: Bash Startup Files291914
|
||||
Node: Interactive Shells297227
|
||||
Node: What is an Interactive Shell?297635
|
||||
Node: Is this Shell Interactive?298297
|
||||
Node: Interactive Shell Behavior299121
|
||||
Node: Bash Conditional Expressions302882
|
||||
Node: Shell Arithmetic308099
|
||||
Node: Aliases311438
|
||||
Node: Arrays314400
|
||||
Node: The Directory Stack321463
|
||||
Node: Directory Stack Builtins322260
|
||||
Node: Controlling the Prompt326705
|
||||
Node: The Restricted Shell329589
|
||||
Node: Bash POSIX Mode332471
|
||||
Node: Shell Compatibility Mode350612
|
||||
Node: Job Control359623
|
||||
Node: Job Control Basics360080
|
||||
Node: Job Control Builtins365388
|
||||
Node: Job Control Variables371556
|
||||
Node: Command Line Editing372724
|
||||
Node: Introduction and Notation374427
|
||||
Node: Readline Interaction376777
|
||||
Node: Readline Bare Essentials377965
|
||||
Node: Readline Movement Commands379773
|
||||
Node: Readline Killing Commands380769
|
||||
Node: Readline Arguments382792
|
||||
Node: Searching383849
|
||||
Node: Readline Init File386110
|
||||
Node: Readline Init File Syntax387414
|
||||
Node: Conditional Init Constructs414134
|
||||
Node: Sample Init File418519
|
||||
Node: Bindable Readline Commands421640
|
||||
Node: Commands For Moving423112
|
||||
Node: Commands For History425339
|
||||
Node: Commands For Text430592
|
||||
Node: Commands For Killing434651
|
||||
Node: Numeric Arguments437439
|
||||
Node: Commands For Completion438591
|
||||
Node: Keyboard Macros443091
|
||||
Node: Miscellaneous Commands443792
|
||||
Node: Readline vi Mode450345
|
||||
Node: Programmable Completion451322
|
||||
Node: Programmable Completion Builtins459374
|
||||
Node: A Programmable Completion Example471039
|
||||
Node: Using History Interactively476384
|
||||
Node: Bash History Facilities477065
|
||||
Node: Bash History Builtins480800
|
||||
Node: History Interaction487271
|
||||
Node: Event Designators492225
|
||||
Node: Word Designators493803
|
||||
Node: Modifiers496111
|
||||
Node: Installing Bash498052
|
||||
Node: Basic Installation499168
|
||||
Node: Compilers and Options503044
|
||||
Node: Compiling For Multiple Architectures503794
|
||||
Node: Installation Names505543
|
||||
Node: Specifying the System Type507777
|
||||
Node: Sharing Defaults508523
|
||||
Node: Operation Controls509237
|
||||
Node: Optional Features510256
|
||||
Node: Reporting Bugs522636
|
||||
Node: Major Differences From The Bourne Shell523994
|
||||
Node: GNU Free Documentation License545414
|
||||
Node: Indexes570591
|
||||
Node: Builtin Index571042
|
||||
Node: Reserved Word Index578140
|
||||
Node: Variable Index580585
|
||||
Node: Function Index597998
|
||||
Node: Concept Index611854
|
||||
Node: Shell Parameter Expansion81633
|
||||
Node: Command Substitution101401
|
||||
Node: Arithmetic Expansion104934
|
||||
Node: Process Substitution105947
|
||||
Node: Word Splitting107063
|
||||
Node: Filename Expansion109160
|
||||
Node: Pattern Matching112428
|
||||
Node: Quote Removal117762
|
||||
Node: Redirections118066
|
||||
Node: Executing Commands128281
|
||||
Node: Simple Command Expansion128948
|
||||
Node: Command Search and Execution131056
|
||||
Node: Command Execution Environment133500
|
||||
Node: Environment136948
|
||||
Node: Exit Status138851
|
||||
Node: Signals140909
|
||||
Node: Shell Scripts144807
|
||||
Node: Shell Builtin Commands148105
|
||||
Node: Bourne Shell Builtins150216
|
||||
Node: Bash Builtins176517
|
||||
Node: Modifying Shell Behavior212965
|
||||
Node: The Set Builtin213307
|
||||
Node: The Shopt Builtin225243
|
||||
Node: Special Builtins242295
|
||||
Node: Shell Variables243284
|
||||
Node: Bourne Shell Variables243718
|
||||
Node: Bash Variables246226
|
||||
Node: Bash Features284483
|
||||
Node: Invoking Bash285497
|
||||
Node: Bash Startup Files291923
|
||||
Node: Interactive Shells297236
|
||||
Node: What is an Interactive Shell?297644
|
||||
Node: Is this Shell Interactive?298306
|
||||
Node: Interactive Shell Behavior299130
|
||||
Node: Bash Conditional Expressions302891
|
||||
Node: Shell Arithmetic308108
|
||||
Node: Aliases311447
|
||||
Node: Arrays314582
|
||||
Node: The Directory Stack321645
|
||||
Node: Directory Stack Builtins322442
|
||||
Node: Controlling the Prompt326887
|
||||
Node: The Restricted Shell329771
|
||||
Node: Bash POSIX Mode332653
|
||||
Node: Shell Compatibility Mode350794
|
||||
Node: Job Control359805
|
||||
Node: Job Control Basics360262
|
||||
Node: Job Control Builtins366538
|
||||
Node: Job Control Variables373220
|
||||
Node: Command Line Editing374451
|
||||
Node: Introduction and Notation376154
|
||||
Node: Readline Interaction378504
|
||||
Node: Readline Bare Essentials379692
|
||||
Node: Readline Movement Commands381500
|
||||
Node: Readline Killing Commands382496
|
||||
Node: Readline Arguments384519
|
||||
Node: Searching385576
|
||||
Node: Readline Init File387837
|
||||
Node: Readline Init File Syntax389141
|
||||
Node: Conditional Init Constructs415887
|
||||
Node: Sample Init File420272
|
||||
Node: Bindable Readline Commands423393
|
||||
Node: Commands For Moving424865
|
||||
Node: Commands For History427092
|
||||
Node: Commands For Text432345
|
||||
Node: Commands For Killing436470
|
||||
Node: Numeric Arguments439258
|
||||
Node: Commands For Completion440410
|
||||
Node: Keyboard Macros444910
|
||||
Node: Miscellaneous Commands445611
|
||||
Node: Readline vi Mode452164
|
||||
Node: Programmable Completion453141
|
||||
Node: Programmable Completion Builtins461193
|
||||
Node: A Programmable Completion Example472858
|
||||
Node: Using History Interactively478203
|
||||
Node: Bash History Facilities478884
|
||||
Node: Bash History Builtins482619
|
||||
Node: History Interaction489090
|
||||
Node: Event Designators494044
|
||||
Node: Word Designators495622
|
||||
Node: Modifiers497930
|
||||
Node: Installing Bash499871
|
||||
Node: Basic Installation500987
|
||||
Node: Compilers and Options504863
|
||||
Node: Compiling For Multiple Architectures505613
|
||||
Node: Installation Names507362
|
||||
Node: Specifying the System Type509596
|
||||
Node: Sharing Defaults510342
|
||||
Node: Operation Controls511056
|
||||
Node: Optional Features512075
|
||||
Node: Reporting Bugs524455
|
||||
Node: Major Differences From The Bourne Shell525813
|
||||
Node: GNU Free Documentation License547233
|
||||
Node: Indexes572410
|
||||
Node: Builtin Index572861
|
||||
Node: Reserved Word Index579959
|
||||
Node: Variable Index582404
|
||||
Node: Function Index599817
|
||||
Node: Concept Index613673
|
||||
|
||||
End Tag Table
|
||||
|
||||
|
||||
Binary file not shown.
+51
-51
@@ -237,154 +237,154 @@
|
||||
@xrdef{Job Control Builtins-pg}{124}
|
||||
@xrdef{Job Control Variables-title}{Job Control Variables}
|
||||
@xrdef{Job Control Variables-snt}{Section@tie 7.3}
|
||||
@xrdef{Job Control Variables-pg}{126}
|
||||
@xrdef{Job Control Variables-pg}{127}
|
||||
@xrdef{Command Line Editing-title}{Command Line Editing}
|
||||
@xrdef{Command Line Editing-snt}{Chapter@tie 8}
|
||||
@xrdef{Introduction and Notation-title}{Introduction to Line Editing}
|
||||
@xrdef{Introduction and Notation-snt}{Section@tie 8.1}
|
||||
@xrdef{Readline Interaction-title}{Readline Interaction}
|
||||
@xrdef{Readline Interaction-snt}{Section@tie 8.2}
|
||||
@xrdef{Command Line Editing-pg}{127}
|
||||
@xrdef{Introduction and Notation-pg}{127}
|
||||
@xrdef{Readline Interaction-pg}{127}
|
||||
@xrdef{Command Line Editing-pg}{128}
|
||||
@xrdef{Introduction and Notation-pg}{128}
|
||||
@xrdef{Readline Interaction-pg}{128}
|
||||
@xrdef{Readline Bare Essentials-title}{Readline Bare Essentials}
|
||||
@xrdef{Readline Bare Essentials-snt}{Section@tie 8.2.1}
|
||||
@xrdef{Readline Movement Commands-title}{Readline Movement Commands}
|
||||
@xrdef{Readline Movement Commands-snt}{Section@tie 8.2.2}
|
||||
@xrdef{Readline Bare Essentials-pg}{128}
|
||||
@xrdef{Readline Movement Commands-pg}{128}
|
||||
@xrdef{Readline Bare Essentials-pg}{129}
|
||||
@xrdef{Readline Movement Commands-pg}{129}
|
||||
@xrdef{Readline Killing Commands-title}{Readline Killing Commands}
|
||||
@xrdef{Readline Killing Commands-snt}{Section@tie 8.2.3}
|
||||
@xrdef{Readline Arguments-title}{Readline Arguments}
|
||||
@xrdef{Readline Arguments-snt}{Section@tie 8.2.4}
|
||||
@xrdef{Searching-title}{Searching for Commands in the History}
|
||||
@xrdef{Searching-snt}{Section@tie 8.2.5}
|
||||
@xrdef{Readline Killing Commands-pg}{129}
|
||||
@xrdef{Readline Arguments-pg}{129}
|
||||
@xrdef{Readline Killing Commands-pg}{130}
|
||||
@xrdef{Readline Arguments-pg}{130}
|
||||
@xrdef{Readline Init File-title}{Readline Init File}
|
||||
@xrdef{Readline Init File-snt}{Section@tie 8.3}
|
||||
@xrdef{Readline Init File Syntax-title}{Readline Init File Syntax}
|
||||
@xrdef{Readline Init File Syntax-snt}{Section@tie 8.3.1}
|
||||
@xrdef{Searching-pg}{130}
|
||||
@xrdef{Readline Init File-pg}{130}
|
||||
@xrdef{Readline Init File Syntax-pg}{130}
|
||||
@xrdef{Searching-pg}{131}
|
||||
@xrdef{Readline Init File-pg}{131}
|
||||
@xrdef{Readline Init File Syntax-pg}{131}
|
||||
@xrdef{Conditional Init Constructs-title}{Conditional Init Constructs}
|
||||
@xrdef{Conditional Init Constructs-snt}{Section@tie 8.3.2}
|
||||
@xrdef{Conditional Init Constructs-pg}{140}
|
||||
@xrdef{Conditional Init Constructs-pg}{141}
|
||||
@xrdef{Sample Init File-title}{Sample Init File}
|
||||
@xrdef{Sample Init File-snt}{Section@tie 8.3.3}
|
||||
@xrdef{Sample Init File-pg}{141}
|
||||
@xrdef{Sample Init File-pg}{142}
|
||||
@xrdef{Bindable Readline Commands-title}{Bindable Readline Commands}
|
||||
@xrdef{Bindable Readline Commands-snt}{Section@tie 8.4}
|
||||
@xrdef{Commands For Moving-title}{Commands For Moving}
|
||||
@xrdef{Commands For Moving-snt}{Section@tie 8.4.1}
|
||||
@xrdef{Bindable Readline Commands-pg}{144}
|
||||
@xrdef{Commands For Moving-pg}{144}
|
||||
@xrdef{Bindable Readline Commands-pg}{145}
|
||||
@xrdef{Commands For Moving-pg}{145}
|
||||
@xrdef{Commands For History-title}{Commands For Manipulating The History}
|
||||
@xrdef{Commands For History-snt}{Section@tie 8.4.2}
|
||||
@xrdef{Commands For History-pg}{145}
|
||||
@xrdef{Commands For History-pg}{146}
|
||||
@xrdef{Commands For Text-title}{Commands For Changing Text}
|
||||
@xrdef{Commands For Text-snt}{Section@tie 8.4.3}
|
||||
@xrdef{Commands For Text-pg}{147}
|
||||
@xrdef{Commands For Text-pg}{148}
|
||||
@xrdef{Commands For Killing-title}{Killing And Yanking}
|
||||
@xrdef{Commands For Killing-snt}{Section@tie 8.4.4}
|
||||
@xrdef{Commands For Killing-pg}{148}
|
||||
@xrdef{Commands For Killing-pg}{149}
|
||||
@xrdef{Numeric Arguments-title}{Specifying Numeric Arguments}
|
||||
@xrdef{Numeric Arguments-snt}{Section@tie 8.4.5}
|
||||
@xrdef{Commands For Completion-title}{Letting Readline Type For You}
|
||||
@xrdef{Commands For Completion-snt}{Section@tie 8.4.6}
|
||||
@xrdef{Numeric Arguments-pg}{150}
|
||||
@xrdef{Commands For Completion-pg}{150}
|
||||
@xrdef{Numeric Arguments-pg}{151}
|
||||
@xrdef{Commands For Completion-pg}{151}
|
||||
@xrdef{Keyboard Macros-title}{Keyboard Macros}
|
||||
@xrdef{Keyboard Macros-snt}{Section@tie 8.4.7}
|
||||
@xrdef{Miscellaneous Commands-title}{Some Miscellaneous Commands}
|
||||
@xrdef{Miscellaneous Commands-snt}{Section@tie 8.4.8}
|
||||
@xrdef{Keyboard Macros-pg}{152}
|
||||
@xrdef{Miscellaneous Commands-pg}{152}
|
||||
@xrdef{Keyboard Macros-pg}{153}
|
||||
@xrdef{Miscellaneous Commands-pg}{153}
|
||||
@xrdef{Readline vi Mode-title}{Readline vi Mode}
|
||||
@xrdef{Readline vi Mode-snt}{Section@tie 8.5}
|
||||
@xrdef{Programmable Completion-title}{Programmable Completion}
|
||||
@xrdef{Programmable Completion-snt}{Section@tie 8.6}
|
||||
@xrdef{Readline vi Mode-pg}{155}
|
||||
@xrdef{Programmable Completion-pg}{155}
|
||||
@xrdef{Readline vi Mode-pg}{156}
|
||||
@xrdef{Programmable Completion-pg}{156}
|
||||
@xrdef{Programmable Completion Builtins-title}{Programmable Completion Builtins}
|
||||
@xrdef{Programmable Completion Builtins-snt}{Section@tie 8.7}
|
||||
@xrdef{Programmable Completion Builtins-pg}{157}
|
||||
@xrdef{Programmable Completion Builtins-pg}{158}
|
||||
@xrdef{A Programmable Completion Example-title}{A Programmable Completion Example}
|
||||
@xrdef{A Programmable Completion Example-snt}{Section@tie 8.8}
|
||||
@xrdef{A Programmable Completion Example-pg}{161}
|
||||
@xrdef{A Programmable Completion Example-pg}{162}
|
||||
@xrdef{Using History Interactively-title}{Using History Interactively}
|
||||
@xrdef{Using History Interactively-snt}{Chapter@tie 9}
|
||||
@xrdef{Bash History Facilities-title}{Bash History Facilities}
|
||||
@xrdef{Bash History Facilities-snt}{Section@tie 9.1}
|
||||
@xrdef{Using History Interactively-pg}{164}
|
||||
@xrdef{Bash History Facilities-pg}{164}
|
||||
@xrdef{Using History Interactively-pg}{165}
|
||||
@xrdef{Bash History Facilities-pg}{165}
|
||||
@xrdef{Bash History Builtins-title}{Bash History Builtins}
|
||||
@xrdef{Bash History Builtins-snt}{Section@tie 9.2}
|
||||
@xrdef{Bash History Builtins-pg}{165}
|
||||
@xrdef{Bash History Builtins-pg}{166}
|
||||
@xrdef{History Interaction-title}{History Expansion}
|
||||
@xrdef{History Interaction-snt}{Section@tie 9.3}
|
||||
@xrdef{History Interaction-pg}{167}
|
||||
@xrdef{History Interaction-pg}{168}
|
||||
@xrdef{Event Designators-title}{Event Designators}
|
||||
@xrdef{Event Designators-snt}{Section@tie 9.3.1}
|
||||
@xrdef{Event Designators-pg}{168}
|
||||
@xrdef{Event Designators-pg}{169}
|
||||
@xrdef{Word Designators-title}{Word Designators}
|
||||
@xrdef{Word Designators-snt}{Section@tie 9.3.2}
|
||||
@xrdef{Modifiers-title}{Modifiers}
|
||||
@xrdef{Modifiers-snt}{Section@tie 9.3.3}
|
||||
@xrdef{Word Designators-pg}{169}
|
||||
@xrdef{Modifiers-pg}{170}
|
||||
@xrdef{Word Designators-pg}{170}
|
||||
@xrdef{Modifiers-pg}{171}
|
||||
@xrdef{Installing Bash-title}{Installing Bash}
|
||||
@xrdef{Installing Bash-snt}{Chapter@tie 10}
|
||||
@xrdef{Basic Installation-title}{Basic Installation}
|
||||
@xrdef{Basic Installation-snt}{Section@tie 10.1}
|
||||
@xrdef{Installing Bash-pg}{171}
|
||||
@xrdef{Basic Installation-pg}{171}
|
||||
@xrdef{Installing Bash-pg}{172}
|
||||
@xrdef{Basic Installation-pg}{172}
|
||||
@xrdef{Compilers and Options-title}{Compilers and Options}
|
||||
@xrdef{Compilers and Options-snt}{Section@tie 10.2}
|
||||
@xrdef{Compiling For Multiple Architectures-title}{Compiling For Multiple Architectures}
|
||||
@xrdef{Compiling For Multiple Architectures-snt}{Section@tie 10.3}
|
||||
@xrdef{Installation Names-title}{Installation Names}
|
||||
@xrdef{Installation Names-snt}{Section@tie 10.4}
|
||||
@xrdef{Compilers and Options-pg}{172}
|
||||
@xrdef{Compiling For Multiple Architectures-pg}{172}
|
||||
@xrdef{Compilers and Options-pg}{173}
|
||||
@xrdef{Compiling For Multiple Architectures-pg}{173}
|
||||
@xrdef{Specifying the System Type-title}{Specifying the System Type}
|
||||
@xrdef{Specifying the System Type-snt}{Section@tie 10.5}
|
||||
@xrdef{Sharing Defaults-title}{Sharing Defaults}
|
||||
@xrdef{Sharing Defaults-snt}{Section@tie 10.6}
|
||||
@xrdef{Operation Controls-title}{Operation Controls}
|
||||
@xrdef{Operation Controls-snt}{Section@tie 10.7}
|
||||
@xrdef{Installation Names-pg}{173}
|
||||
@xrdef{Specifying the System Type-pg}{173}
|
||||
@xrdef{Sharing Defaults-pg}{173}
|
||||
@xrdef{Installation Names-pg}{174}
|
||||
@xrdef{Specifying the System Type-pg}{174}
|
||||
@xrdef{Sharing Defaults-pg}{174}
|
||||
@xrdef{Optional Features-title}{Optional Features}
|
||||
@xrdef{Optional Features-snt}{Section@tie 10.8}
|
||||
@xrdef{Operation Controls-pg}{174}
|
||||
@xrdef{Optional Features-pg}{174}
|
||||
@xrdef{Operation Controls-pg}{175}
|
||||
@xrdef{Optional Features-pg}{175}
|
||||
@xrdef{Reporting Bugs-title}{Reporting Bugs}
|
||||
@xrdef{Reporting Bugs-snt}{Appendix@tie @char65{}}
|
||||
@xrdef{Reporting Bugs-pg}{180}
|
||||
@xrdef{Reporting Bugs-pg}{181}
|
||||
@xrdef{Major Differences From The Bourne Shell-title}{Major Differences From The Bourne Shell}
|
||||
@xrdef{Major Differences From The Bourne Shell-snt}{Appendix@tie @char66{}}
|
||||
@xrdef{Major Differences From The Bourne Shell-pg}{181}
|
||||
@xrdef{Major Differences From The Bourne Shell-pg}{182}
|
||||
@xrdef{GNU Free Documentation License-title}{GNU Free Documentation License}
|
||||
@xrdef{GNU Free Documentation License-snt}{Appendix@tie @char67{}}
|
||||
@xrdef{GNU Free Documentation License-pg}{188}
|
||||
@xrdef{GNU Free Documentation License-pg}{189}
|
||||
@xrdef{Indexes-title}{Indexes}
|
||||
@xrdef{Indexes-snt}{Appendix@tie @char68{}}
|
||||
@xrdef{Builtin Index-title}{Index of Shell Builtin Commands}
|
||||
@xrdef{Builtin Index-snt}{Section@tie @char68.1}
|
||||
@xrdef{Indexes-pg}{196}
|
||||
@xrdef{Builtin Index-pg}{196}
|
||||
@xrdef{Indexes-pg}{197}
|
||||
@xrdef{Builtin Index-pg}{197}
|
||||
@xrdef{Reserved Word Index-title}{Index of Shell Reserved Words}
|
||||
@xrdef{Reserved Word Index-snt}{Section@tie @char68.2}
|
||||
@xrdef{Variable Index-title}{Parameter and Variable Index}
|
||||
@xrdef{Variable Index-snt}{Section@tie @char68.3}
|
||||
@xrdef{Reserved Word Index-pg}{197}
|
||||
@xrdef{Variable Index-pg}{198}
|
||||
@xrdef{Reserved Word Index-pg}{198}
|
||||
@xrdef{Variable Index-pg}{199}
|
||||
@xrdef{Function Index-title}{Function Index}
|
||||
@xrdef{Function Index-snt}{Section@tie @char68.4}
|
||||
@xrdef{Function Index-pg}{200}
|
||||
@xrdef{Function Index-pg}{201}
|
||||
@xrdef{Concept Index-title}{Concept Index}
|
||||
@xrdef{Concept Index-snt}{Section@tie @char68.5}
|
||||
@xrdef{Concept Index-pg}{202}
|
||||
@xrdef{Concept Index-pg}{203}
|
||||
|
||||
+8
-8
@@ -48,14 +48,14 @@
|
||||
\entry{popd}{110}{\code {popd}}
|
||||
\entry{pushd}{111}{\code {pushd}}
|
||||
\entry{bg}{124}{\code {bg}}
|
||||
\entry{fg}{124}{\code {fg}}
|
||||
\entry{jobs}{124}{\code {jobs}}
|
||||
\entry{fg}{125}{\code {fg}}
|
||||
\entry{jobs}{125}{\code {jobs}}
|
||||
\entry{kill}{125}{\code {kill}}
|
||||
\entry{wait}{125}{\code {wait}}
|
||||
\entry{wait}{126}{\code {wait}}
|
||||
\entry{disown}{126}{\code {disown}}
|
||||
\entry{suspend}{126}{\code {suspend}}
|
||||
\entry{compgen}{157}{\code {compgen}}
|
||||
\entry{complete}{158}{\code {complete}}
|
||||
\entry{compopt}{161}{\code {compopt}}
|
||||
\entry{fc}{165}{\code {fc}}
|
||||
\entry{history}{165}{\code {history}}
|
||||
\entry{compgen}{158}{\code {compgen}}
|
||||
\entry{complete}{159}{\code {complete}}
|
||||
\entry{compopt}{162}{\code {compopt}}
|
||||
\entry{fc}{166}{\code {fc}}
|
||||
\entry{history}{166}{\code {history}}
|
||||
|
||||
+8
-8
@@ -15,9 +15,9 @@
|
||||
\entry{\code {caller}}{61}
|
||||
\entry{\code {cd}}{51}
|
||||
\entry{\code {command}}{61}
|
||||
\entry{\code {compgen}}{157}
|
||||
\entry{\code {complete}}{158}
|
||||
\entry{\code {compopt}}{161}
|
||||
\entry{\code {compgen}}{158}
|
||||
\entry{\code {complete}}{159}
|
||||
\entry{\code {compopt}}{162}
|
||||
\entry{\code {continue}}{52}
|
||||
\initial {D}
|
||||
\entry{\code {declare}}{62}
|
||||
@@ -32,16 +32,16 @@
|
||||
\entry{\code {export}}{52}
|
||||
\initial {F}
|
||||
\entry{\code {false}}{53}
|
||||
\entry{\code {fc}}{165}
|
||||
\entry{\code {fg}}{124}
|
||||
\entry{\code {fc}}{166}
|
||||
\entry{\code {fg}}{125}
|
||||
\initial {G}
|
||||
\entry{\code {getopts}}{53}
|
||||
\initial {H}
|
||||
\entry{\code {hash}}{54}
|
||||
\entry{\code {help}}{65}
|
||||
\entry{\code {history}}{165}
|
||||
\entry{\code {history}}{166}
|
||||
\initial {J}
|
||||
\entry{\code {jobs}}{124}
|
||||
\entry{\code {jobs}}{125}
|
||||
\initial {K}
|
||||
\entry{\code {kill}}{125}
|
||||
\initial {L}
|
||||
@@ -79,4 +79,4 @@
|
||||
\entry{\code {unalias}}{71}
|
||||
\entry{\code {unset}}{58}
|
||||
\initial {W}
|
||||
\entry{\code {wait}}{125}
|
||||
\entry{\code {wait}}{126}
|
||||
|
||||
+23
-23
@@ -105,26 +105,26 @@
|
||||
\entry{foreground}{123}{foreground}
|
||||
\entry{background}{123}{background}
|
||||
\entry{suspending jobs}{123}{suspending jobs}
|
||||
\entry{Readline, how to use}{126}{Readline, how to use}
|
||||
\entry{interaction, readline}{127}{interaction, readline}
|
||||
\entry{notation, readline}{128}{notation, readline}
|
||||
\entry{command editing}{128}{command editing}
|
||||
\entry{editing command lines}{128}{editing command lines}
|
||||
\entry{killing text}{129}{killing text}
|
||||
\entry{yanking text}{129}{yanking text}
|
||||
\entry{kill ring}{129}{kill ring}
|
||||
\entry{initialization file, readline}{130}{initialization file, readline}
|
||||
\entry{variables, readline}{131}{variables, readline}
|
||||
\entry{programmable completion}{155}{programmable completion}
|
||||
\entry{completion builtins}{157}{completion builtins}
|
||||
\entry{History, how to use}{163}{History, how to use}
|
||||
\entry{command history}{164}{command history}
|
||||
\entry{history list}{164}{history list}
|
||||
\entry{history builtins}{165}{history builtins}
|
||||
\entry{history expansion}{167}{history expansion}
|
||||
\entry{event designators}{168}{event designators}
|
||||
\entry{history events}{168}{history events}
|
||||
\entry{installation}{171}{installation}
|
||||
\entry{configuration}{171}{configuration}
|
||||
\entry{Bash installation}{171}{Bash installation}
|
||||
\entry{Bash configuration}{171}{Bash configuration}
|
||||
\entry{Readline, how to use}{127}{Readline, how to use}
|
||||
\entry{interaction, readline}{128}{interaction, readline}
|
||||
\entry{notation, readline}{129}{notation, readline}
|
||||
\entry{command editing}{129}{command editing}
|
||||
\entry{editing command lines}{129}{editing command lines}
|
||||
\entry{killing text}{130}{killing text}
|
||||
\entry{yanking text}{130}{yanking text}
|
||||
\entry{kill ring}{130}{kill ring}
|
||||
\entry{initialization file, readline}{131}{initialization file, readline}
|
||||
\entry{variables, readline}{132}{variables, readline}
|
||||
\entry{programmable completion}{156}{programmable completion}
|
||||
\entry{completion builtins}{158}{completion builtins}
|
||||
\entry{History, how to use}{164}{History, how to use}
|
||||
\entry{command history}{165}{command history}
|
||||
\entry{history list}{165}{history list}
|
||||
\entry{history builtins}{166}{history builtins}
|
||||
\entry{history expansion}{168}{history expansion}
|
||||
\entry{event designators}{169}{event designators}
|
||||
\entry{history events}{169}{history events}
|
||||
\entry{installation}{172}{installation}
|
||||
\entry{configuration}{172}{configuration}
|
||||
\entry{Bash installation}{172}{Bash installation}
|
||||
\entry{Bash configuration}{172}{Bash configuration}
|
||||
|
||||
+23
-23
@@ -7,18 +7,18 @@
|
||||
\entry{arrays}{108}
|
||||
\initial {B}
|
||||
\entry{background}{123}
|
||||
\entry{Bash configuration}{171}
|
||||
\entry{Bash installation}{171}
|
||||
\entry{Bash configuration}{172}
|
||||
\entry{Bash installation}{172}
|
||||
\entry{binary arithmetic operators}{106}
|
||||
\entry{bitwise arithmetic operators}{106}
|
||||
\entry{Bourne shell}{5}
|
||||
\entry{brace expansion}{25}
|
||||
\entry{builtin}{3}
|
||||
\initial {C}
|
||||
\entry{command editing}{128}
|
||||
\entry{command editing}{129}
|
||||
\entry{command execution}{44}
|
||||
\entry{command expansion}{44}
|
||||
\entry{command history}{164}
|
||||
\entry{command history}{165}
|
||||
\entry{command search}{44}
|
||||
\entry{command substitution}{35}
|
||||
\entry{command timing}{10}
|
||||
@@ -33,19 +33,19 @@
|
||||
\entry{comments, shell}{9}
|
||||
\entry{Compatibility Level}{119}
|
||||
\entry{Compatibility Mode}{119}
|
||||
\entry{completion builtins}{157}
|
||||
\entry{completion builtins}{158}
|
||||
\entry{conditional arithmetic operator}{106}
|
||||
\entry{configuration}{171}
|
||||
\entry{configuration}{172}
|
||||
\entry{control operator}{3}
|
||||
\entry{coprocess}{18}
|
||||
\initial {D}
|
||||
\entry{directory stack}{110}
|
||||
\entry{dollar-single quote quoting}{6}
|
||||
\initial {E}
|
||||
\entry{editing command lines}{128}
|
||||
\entry{editing command lines}{129}
|
||||
\entry{environment}{46}
|
||||
\entry{evaluation, arithmetic}{105}
|
||||
\entry{event designators}{168}
|
||||
\entry{event designators}{169}
|
||||
\entry{execution environment}{45}
|
||||
\entry{exit status}{3, 47}
|
||||
\entry{expansion}{24}
|
||||
@@ -64,16 +64,16 @@
|
||||
\entry{foreground}{123}
|
||||
\entry{functions, shell}{19}
|
||||
\initial {H}
|
||||
\entry{history builtins}{165}
|
||||
\entry{history events}{168}
|
||||
\entry{history expansion}{167}
|
||||
\entry{history list}{164}
|
||||
\entry{History, how to use}{163}
|
||||
\entry{history builtins}{166}
|
||||
\entry{history events}{169}
|
||||
\entry{history expansion}{168}
|
||||
\entry{history list}{165}
|
||||
\entry{History, how to use}{164}
|
||||
\initial {I}
|
||||
\entry{identifier}{3}
|
||||
\entry{initialization file, readline}{130}
|
||||
\entry{installation}{171}
|
||||
\entry{interaction, readline}{127}
|
||||
\entry{initialization file, readline}{131}
|
||||
\entry{installation}{172}
|
||||
\entry{interaction, readline}{128}
|
||||
\entry{interactive shell}{100, 102}
|
||||
\entry{internationalization}{7}
|
||||
\entry{internationalized scripts}{8}
|
||||
@@ -81,8 +81,8 @@
|
||||
\entry{job}{3}
|
||||
\entry{job control}{3, 123}
|
||||
\initial {K}
|
||||
\entry{kill ring}{129}
|
||||
\entry{killing text}{129}
|
||||
\entry{kill ring}{130}
|
||||
\entry{killing text}{130}
|
||||
\initial {L}
|
||||
\entry{localization}{7}
|
||||
\entry{login shell}{100}
|
||||
@@ -92,7 +92,7 @@
|
||||
\initial {N}
|
||||
\entry{name}{3}
|
||||
\entry{native languages}{7}
|
||||
\entry{notation, readline}{128}
|
||||
\entry{notation, readline}{129}
|
||||
\initial {O}
|
||||
\entry{operator, shell}{3}
|
||||
\initial {P}
|
||||
@@ -109,13 +109,13 @@
|
||||
\entry{process group}{3}
|
||||
\entry{process group ID}{3}
|
||||
\entry{process substitution}{36}
|
||||
\entry{programmable completion}{155}
|
||||
\entry{programmable completion}{156}
|
||||
\entry{prompting}{111}
|
||||
\initial {Q}
|
||||
\entry{quoting}{6}
|
||||
\entry{quoting, ANSI}{6}
|
||||
\initial {R}
|
||||
\entry{Readline, how to use}{126}
|
||||
\entry{Readline, how to use}{127}
|
||||
\entry{redirection}{40}
|
||||
\entry{reserved word}{3}
|
||||
\entry{reserved words}{9}
|
||||
@@ -141,9 +141,9 @@
|
||||
\entry{unary arithmetic operators}{106}
|
||||
\initial {V}
|
||||
\entry{variable, shell}{22}
|
||||
\entry{variables, readline}{131}
|
||||
\entry{variables, readline}{132}
|
||||
\initial {W}
|
||||
\entry{word}{4}
|
||||
\entry{word splitting}{37}
|
||||
\initial {Y}
|
||||
\entry{yanking text}{129}
|
||||
\entry{yanking text}{130}
|
||||
|
||||
Binary file not shown.
+115
-115
@@ -1,115 +1,115 @@
|
||||
\entry{beginning-of-line (C-a)}{144}{\code {beginning-of-line (C-a)}}
|
||||
\entry{end-of-line (C-e)}{144}{\code {end-of-line (C-e)}}
|
||||
\entry{forward-char (C-f)}{144}{\code {forward-char (C-f)}}
|
||||
\entry{backward-char (C-b)}{144}{\code {backward-char (C-b)}}
|
||||
\entry{forward-word (M-f)}{144}{\code {forward-word (M-f)}}
|
||||
\entry{backward-word (M-b)}{144}{\code {backward-word (M-b)}}
|
||||
\entry{shell-forward-word (M-C-f)}{144}{\code {shell-forward-word (M-C-f)}}
|
||||
\entry{shell-backward-word (M-C-b)}{144}{\code {shell-backward-word (M-C-b)}}
|
||||
\entry{previous-screen-line ()}{145}{\code {previous-screen-line ()}}
|
||||
\entry{next-screen-line ()}{145}{\code {next-screen-line ()}}
|
||||
\entry{clear-display (M-C-l)}{145}{\code {clear-display (M-C-l)}}
|
||||
\entry{clear-screen (C-l)}{145}{\code {clear-screen (C-l)}}
|
||||
\entry{redraw-current-line ()}{145}{\code {redraw-current-line ()}}
|
||||
\entry{accept-line (Newline or Return)}{145}{\code {accept-line (Newline or Return)}}
|
||||
\entry{previous-history (C-p)}{145}{\code {previous-history (C-p)}}
|
||||
\entry{next-history (C-n)}{145}{\code {next-history (C-n)}}
|
||||
\entry{beginning-of-history (M-<)}{145}{\code {beginning-of-history (M-<)}}
|
||||
\entry{end-of-history (M->)}{145}{\code {end-of-history (M->)}}
|
||||
\entry{reverse-search-history (C-r)}{145}{\code {reverse-search-history (C-r)}}
|
||||
\entry{forward-search-history (C-s)}{145}{\code {forward-search-history (C-s)}}
|
||||
\entry{non-incremental-reverse-search-history (M-p)}{146}{\code {non-incremental-reverse-search-history (M-p)}}
|
||||
\entry{non-incremental-forward-search-history (M-n)}{146}{\code {non-incremental-forward-search-history (M-n)}}
|
||||
\entry{history-search-backward ()}{146}{\code {history-search-backward ()}}
|
||||
\entry{history-search-forward ()}{146}{\code {history-search-forward ()}}
|
||||
\entry{history-substring-search-backward ()}{146}{\code {history-substring-search-backward ()}}
|
||||
\entry{history-substring-search-forward ()}{146}{\code {history-substring-search-forward ()}}
|
||||
\entry{yank-nth-arg (M-C-y)}{146}{\code {yank-nth-arg (M-C-y)}}
|
||||
\entry{yank-last-arg (M-. or M-_)}{146}{\code {yank-last-arg (M-. or M-_)}}
|
||||
\entry{operate-and-get-next (C-o)}{147}{\code {operate-and-get-next (C-o)}}
|
||||
\entry{fetch-history ()}{147}{\code {fetch-history ()}}
|
||||
\entry{end-of-file (usually C-d)}{147}{\code {\i {end-of-file} (usually C-d)}}
|
||||
\entry{delete-char (C-d)}{147}{\code {delete-char (C-d)}}
|
||||
\entry{backward-delete-char (Rubout)}{147}{\code {backward-delete-char (Rubout)}}
|
||||
\entry{forward-backward-delete-char ()}{147}{\code {forward-backward-delete-char ()}}
|
||||
\entry{quoted-insert (C-q or C-v)}{147}{\code {quoted-insert (C-q or C-v)}}
|
||||
\entry{self-insert (a, b, A, 1, !, ...{})}{147}{\code {self-insert (a, b, A, 1, !, \dots {})}}
|
||||
\entry{bracketed-paste-begin ()}{147}{\code {bracketed-paste-begin ()}}
|
||||
\entry{transpose-chars (C-t)}{148}{\code {transpose-chars (C-t)}}
|
||||
\entry{transpose-words (M-t)}{148}{\code {transpose-words (M-t)}}
|
||||
\entry{shell-transpose-words (M-C-t)}{148}{\code {shell-transpose-words (M-C-t)}}
|
||||
\entry{upcase-word (M-u)}{148}{\code {upcase-word (M-u)}}
|
||||
\entry{downcase-word (M-l)}{148}{\code {downcase-word (M-l)}}
|
||||
\entry{capitalize-word (M-c)}{148}{\code {capitalize-word (M-c)}}
|
||||
\entry{overwrite-mode ()}{148}{\code {overwrite-mode ()}}
|
||||
\entry{kill-line (C-k)}{148}{\code {kill-line (C-k)}}
|
||||
\entry{backward-kill-line (C-x Rubout)}{148}{\code {backward-kill-line (C-x Rubout)}}
|
||||
\entry{unix-line-discard (C-u)}{148}{\code {unix-line-discard (C-u)}}
|
||||
\entry{kill-whole-line ()}{149}{\code {kill-whole-line ()}}
|
||||
\entry{kill-word (M-d)}{149}{\code {kill-word (M-d)}}
|
||||
\entry{backward-kill-word (M-DEL)}{149}{\code {backward-kill-word (M-\key {DEL})}}
|
||||
\entry{shell-kill-word (M-C-d)}{149}{\code {shell-kill-word (M-C-d)}}
|
||||
\entry{shell-backward-kill-word ()}{149}{\code {shell-backward-kill-word ()}}
|
||||
\entry{unix-word-rubout (C-w)}{149}{\code {unix-word-rubout (C-w)}}
|
||||
\entry{unix-filename-rubout ()}{149}{\code {unix-filename-rubout ()}}
|
||||
\entry{delete-horizontal-space ()}{149}{\code {delete-horizontal-space ()}}
|
||||
\entry{kill-region ()}{149}{\code {kill-region ()}}
|
||||
\entry{copy-region-as-kill ()}{149}{\code {copy-region-as-kill ()}}
|
||||
\entry{copy-backward-word ()}{149}{\code {copy-backward-word ()}}
|
||||
\entry{copy-forward-word ()}{149}{\code {copy-forward-word ()}}
|
||||
\entry{yank (C-y)}{149}{\code {yank (C-y)}}
|
||||
\entry{yank-pop (M-y)}{149}{\code {yank-pop (M-y)}}
|
||||
\entry{digit-argument (M-0, M-1, ...{} M--)}{150}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
|
||||
\entry{universal-argument ()}{150}{\code {universal-argument ()}}
|
||||
\entry{complete (TAB)}{150}{\code {complete (\key {TAB})}}
|
||||
\entry{possible-completions (M-?)}{150}{\code {possible-completions (M-?)}}
|
||||
\entry{insert-completions (M-*)}{150}{\code {insert-completions (M-*)}}
|
||||
\entry{menu-complete ()}{150}{\code {menu-complete ()}}
|
||||
\entry{menu-complete-backward ()}{151}{\code {menu-complete-backward ()}}
|
||||
\entry{delete-char-or-list ()}{151}{\code {delete-char-or-list ()}}
|
||||
\entry{complete-filename (M-/)}{151}{\code {complete-filename (M-/)}}
|
||||
\entry{possible-filename-completions (C-x /)}{151}{\code {possible-filename-completions (C-x /)}}
|
||||
\entry{complete-username (M-~)}{151}{\code {complete-username (M-~)}}
|
||||
\entry{possible-username-completions (C-x ~)}{151}{\code {possible-username-completions (C-x ~)}}
|
||||
\entry{complete-variable (M-$)}{151}{\code {complete-variable (M-$)}}
|
||||
\entry{possible-variable-completions (C-x $)}{151}{\code {possible-variable-completions (C-x $)}}
|
||||
\entry{complete-hostname (M-@)}{151}{\code {complete-hostname (M-@)}}
|
||||
\entry{possible-hostname-completions (C-x @)}{151}{\code {possible-hostname-completions (C-x @)}}
|
||||
\entry{complete-command (M-!)}{151}{\code {complete-command (M-!)}}
|
||||
\entry{possible-command-completions (C-x !)}{151}{\code {possible-command-completions (C-x !)}}
|
||||
\entry{dynamic-complete-history (M-TAB)}{151}{\code {dynamic-complete-history (M-\key {TAB})}}
|
||||
\entry{dabbrev-expand ()}{151}{\code {dabbrev-expand ()}}
|
||||
\entry{complete-into-braces (M-{\indexlbrace })}{152}{\code {complete-into-braces (M-{\tt \char 123})}}
|
||||
\entry{start-kbd-macro (C-x ()}{152}{\code {start-kbd-macro (C-x ()}}
|
||||
\entry{end-kbd-macro (C-x ))}{152}{\code {end-kbd-macro (C-x ))}}
|
||||
\entry{call-last-kbd-macro (C-x e)}{152}{\code {call-last-kbd-macro (C-x e)}}
|
||||
\entry{print-last-kbd-macro ()}{152}{\code {print-last-kbd-macro ()}}
|
||||
\entry{re-read-init-file (C-x C-r)}{152}{\code {re-read-init-file (C-x C-r)}}
|
||||
\entry{abort (C-g)}{152}{\code {abort (C-g)}}
|
||||
\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{152}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}
|
||||
\entry{prefix-meta (ESC)}{152}{\code {prefix-meta (\key {ESC})}}
|
||||
\entry{undo (C-_ or C-x C-u)}{152}{\code {undo (C-_ or C-x C-u)}}
|
||||
\entry{revert-line (M-r)}{152}{\code {revert-line (M-r)}}
|
||||
\entry{tilde-expand (M-&)}{152}{\code {tilde-expand (M-&)}}
|
||||
\entry{set-mark (C-@)}{152}{\code {set-mark (C-@)}}
|
||||
\entry{exchange-point-and-mark (C-x C-x)}{152}{\code {exchange-point-and-mark (C-x C-x)}}
|
||||
\entry{character-search (C-])}{153}{\code {character-search (C-])}}
|
||||
\entry{character-search-backward (M-C-])}{153}{\code {character-search-backward (M-C-])}}
|
||||
\entry{skip-csi-sequence ()}{153}{\code {skip-csi-sequence ()}}
|
||||
\entry{insert-comment (M-#)}{153}{\code {insert-comment (M-#)}}
|
||||
\entry{dump-functions ()}{153}{\code {dump-functions ()}}
|
||||
\entry{dump-variables ()}{153}{\code {dump-variables ()}}
|
||||
\entry{dump-macros ()}{153}{\code {dump-macros ()}}
|
||||
\entry{execute-named-command (M-x)}{153}{\code {execute-named-command (M-x)}}
|
||||
\entry{spell-correct-word (C-x s)}{154}{\code {spell-correct-word (C-x s)}}
|
||||
\entry{glob-complete-word (M-g)}{154}{\code {glob-complete-word (M-g)}}
|
||||
\entry{glob-expand-word (C-x *)}{154}{\code {glob-expand-word (C-x *)}}
|
||||
\entry{glob-list-expansions (C-x g)}{154}{\code {glob-list-expansions (C-x g)}}
|
||||
\entry{shell-expand-line (M-C-e)}{154}{\code {shell-expand-line (M-C-e)}}
|
||||
\entry{history-expand-line (M-^)}{154}{\code {history-expand-line (M-^)}}
|
||||
\entry{magic-space ()}{154}{\code {magic-space ()}}
|
||||
\entry{alias-expand-line ()}{154}{\code {alias-expand-line ()}}
|
||||
\entry{history-and-alias-expand-line ()}{154}{\code {history-and-alias-expand-line ()}}
|
||||
\entry{insert-last-argument (M-. or M-_)}{154}{\code {insert-last-argument (M-. or M-_)}}
|
||||
\entry{edit-and-execute-command (C-x C-e)}{154}{\code {edit-and-execute-command (C-x C-e)}}
|
||||
\entry{display-shell-version (C-x C-v)}{154}{\code {display-shell-version (C-x C-v)}}
|
||||
\entry{beginning-of-line (C-a)}{145}{\code {beginning-of-line (C-a)}}
|
||||
\entry{end-of-line (C-e)}{145}{\code {end-of-line (C-e)}}
|
||||
\entry{forward-char (C-f)}{145}{\code {forward-char (C-f)}}
|
||||
\entry{backward-char (C-b)}{145}{\code {backward-char (C-b)}}
|
||||
\entry{forward-word (M-f)}{145}{\code {forward-word (M-f)}}
|
||||
\entry{backward-word (M-b)}{145}{\code {backward-word (M-b)}}
|
||||
\entry{shell-forward-word (M-C-f)}{145}{\code {shell-forward-word (M-C-f)}}
|
||||
\entry{shell-backward-word (M-C-b)}{145}{\code {shell-backward-word (M-C-b)}}
|
||||
\entry{previous-screen-line ()}{146}{\code {previous-screen-line ()}}
|
||||
\entry{next-screen-line ()}{146}{\code {next-screen-line ()}}
|
||||
\entry{clear-display (M-C-l)}{146}{\code {clear-display (M-C-l)}}
|
||||
\entry{clear-screen (C-l)}{146}{\code {clear-screen (C-l)}}
|
||||
\entry{redraw-current-line ()}{146}{\code {redraw-current-line ()}}
|
||||
\entry{accept-line (Newline or Return)}{146}{\code {accept-line (Newline or Return)}}
|
||||
\entry{previous-history (C-p)}{146}{\code {previous-history (C-p)}}
|
||||
\entry{next-history (C-n)}{146}{\code {next-history (C-n)}}
|
||||
\entry{beginning-of-history (M-<)}{146}{\code {beginning-of-history (M-<)}}
|
||||
\entry{end-of-history (M->)}{146}{\code {end-of-history (M->)}}
|
||||
\entry{reverse-search-history (C-r)}{146}{\code {reverse-search-history (C-r)}}
|
||||
\entry{forward-search-history (C-s)}{146}{\code {forward-search-history (C-s)}}
|
||||
\entry{non-incremental-reverse-search-history (M-p)}{147}{\code {non-incremental-reverse-search-history (M-p)}}
|
||||
\entry{non-incremental-forward-search-history (M-n)}{147}{\code {non-incremental-forward-search-history (M-n)}}
|
||||
\entry{history-search-backward ()}{147}{\code {history-search-backward ()}}
|
||||
\entry{history-search-forward ()}{147}{\code {history-search-forward ()}}
|
||||
\entry{history-substring-search-backward ()}{147}{\code {history-substring-search-backward ()}}
|
||||
\entry{history-substring-search-forward ()}{147}{\code {history-substring-search-forward ()}}
|
||||
\entry{yank-nth-arg (M-C-y)}{147}{\code {yank-nth-arg (M-C-y)}}
|
||||
\entry{yank-last-arg (M-. or M-_)}{147}{\code {yank-last-arg (M-. or M-_)}}
|
||||
\entry{operate-and-get-next (C-o)}{148}{\code {operate-and-get-next (C-o)}}
|
||||
\entry{fetch-history ()}{148}{\code {fetch-history ()}}
|
||||
\entry{end-of-file (usually C-d)}{148}{\code {\i {end-of-file} (usually C-d)}}
|
||||
\entry{delete-char (C-d)}{148}{\code {delete-char (C-d)}}
|
||||
\entry{backward-delete-char (Rubout)}{148}{\code {backward-delete-char (Rubout)}}
|
||||
\entry{forward-backward-delete-char ()}{148}{\code {forward-backward-delete-char ()}}
|
||||
\entry{quoted-insert (C-q or C-v)}{148}{\code {quoted-insert (C-q or C-v)}}
|
||||
\entry{self-insert (a, b, A, 1, !, ...{})}{148}{\code {self-insert (a, b, A, 1, !, \dots {})}}
|
||||
\entry{bracketed-paste-begin ()}{148}{\code {bracketed-paste-begin ()}}
|
||||
\entry{transpose-chars (C-t)}{149}{\code {transpose-chars (C-t)}}
|
||||
\entry{transpose-words (M-t)}{149}{\code {transpose-words (M-t)}}
|
||||
\entry{shell-transpose-words (M-C-t)}{149}{\code {shell-transpose-words (M-C-t)}}
|
||||
\entry{upcase-word (M-u)}{149}{\code {upcase-word (M-u)}}
|
||||
\entry{downcase-word (M-l)}{149}{\code {downcase-word (M-l)}}
|
||||
\entry{capitalize-word (M-c)}{149}{\code {capitalize-word (M-c)}}
|
||||
\entry{overwrite-mode ()}{149}{\code {overwrite-mode ()}}
|
||||
\entry{kill-line (C-k)}{149}{\code {kill-line (C-k)}}
|
||||
\entry{backward-kill-line (C-x Rubout)}{149}{\code {backward-kill-line (C-x Rubout)}}
|
||||
\entry{unix-line-discard (C-u)}{149}{\code {unix-line-discard (C-u)}}
|
||||
\entry{kill-whole-line ()}{150}{\code {kill-whole-line ()}}
|
||||
\entry{kill-word (M-d)}{150}{\code {kill-word (M-d)}}
|
||||
\entry{backward-kill-word (M-DEL)}{150}{\code {backward-kill-word (M-\key {DEL})}}
|
||||
\entry{shell-kill-word (M-C-d)}{150}{\code {shell-kill-word (M-C-d)}}
|
||||
\entry{shell-backward-kill-word ()}{150}{\code {shell-backward-kill-word ()}}
|
||||
\entry{unix-word-rubout (C-w)}{150}{\code {unix-word-rubout (C-w)}}
|
||||
\entry{unix-filename-rubout ()}{150}{\code {unix-filename-rubout ()}}
|
||||
\entry{delete-horizontal-space ()}{150}{\code {delete-horizontal-space ()}}
|
||||
\entry{kill-region ()}{150}{\code {kill-region ()}}
|
||||
\entry{copy-region-as-kill ()}{150}{\code {copy-region-as-kill ()}}
|
||||
\entry{copy-backward-word ()}{150}{\code {copy-backward-word ()}}
|
||||
\entry{copy-forward-word ()}{150}{\code {copy-forward-word ()}}
|
||||
\entry{yank (C-y)}{150}{\code {yank (C-y)}}
|
||||
\entry{yank-pop (M-y)}{150}{\code {yank-pop (M-y)}}
|
||||
\entry{digit-argument (M-0, M-1, ...{} M--)}{151}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
|
||||
\entry{universal-argument ()}{151}{\code {universal-argument ()}}
|
||||
\entry{complete (TAB)}{151}{\code {complete (\key {TAB})}}
|
||||
\entry{possible-completions (M-?)}{151}{\code {possible-completions (M-?)}}
|
||||
\entry{insert-completions (M-*)}{151}{\code {insert-completions (M-*)}}
|
||||
\entry{menu-complete ()}{151}{\code {menu-complete ()}}
|
||||
\entry{menu-complete-backward ()}{152}{\code {menu-complete-backward ()}}
|
||||
\entry{delete-char-or-list ()}{152}{\code {delete-char-or-list ()}}
|
||||
\entry{complete-filename (M-/)}{152}{\code {complete-filename (M-/)}}
|
||||
\entry{possible-filename-completions (C-x /)}{152}{\code {possible-filename-completions (C-x /)}}
|
||||
\entry{complete-username (M-~)}{152}{\code {complete-username (M-~)}}
|
||||
\entry{possible-username-completions (C-x ~)}{152}{\code {possible-username-completions (C-x ~)}}
|
||||
\entry{complete-variable (M-$)}{152}{\code {complete-variable (M-$)}}
|
||||
\entry{possible-variable-completions (C-x $)}{152}{\code {possible-variable-completions (C-x $)}}
|
||||
\entry{complete-hostname (M-@)}{152}{\code {complete-hostname (M-@)}}
|
||||
\entry{possible-hostname-completions (C-x @)}{152}{\code {possible-hostname-completions (C-x @)}}
|
||||
\entry{complete-command (M-!)}{152}{\code {complete-command (M-!)}}
|
||||
\entry{possible-command-completions (C-x !)}{152}{\code {possible-command-completions (C-x !)}}
|
||||
\entry{dynamic-complete-history (M-TAB)}{152}{\code {dynamic-complete-history (M-\key {TAB})}}
|
||||
\entry{dabbrev-expand ()}{152}{\code {dabbrev-expand ()}}
|
||||
\entry{complete-into-braces (M-{\indexlbrace })}{153}{\code {complete-into-braces (M-{\tt \char 123})}}
|
||||
\entry{start-kbd-macro (C-x ()}{153}{\code {start-kbd-macro (C-x ()}}
|
||||
\entry{end-kbd-macro (C-x ))}{153}{\code {end-kbd-macro (C-x ))}}
|
||||
\entry{call-last-kbd-macro (C-x e)}{153}{\code {call-last-kbd-macro (C-x e)}}
|
||||
\entry{print-last-kbd-macro ()}{153}{\code {print-last-kbd-macro ()}}
|
||||
\entry{re-read-init-file (C-x C-r)}{153}{\code {re-read-init-file (C-x C-r)}}
|
||||
\entry{abort (C-g)}{153}{\code {abort (C-g)}}
|
||||
\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{153}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}
|
||||
\entry{prefix-meta (ESC)}{153}{\code {prefix-meta (\key {ESC})}}
|
||||
\entry{undo (C-_ or C-x C-u)}{153}{\code {undo (C-_ or C-x C-u)}}
|
||||
\entry{revert-line (M-r)}{153}{\code {revert-line (M-r)}}
|
||||
\entry{tilde-expand (M-&)}{153}{\code {tilde-expand (M-&)}}
|
||||
\entry{set-mark (C-@)}{153}{\code {set-mark (C-@)}}
|
||||
\entry{exchange-point-and-mark (C-x C-x)}{153}{\code {exchange-point-and-mark (C-x C-x)}}
|
||||
\entry{character-search (C-])}{154}{\code {character-search (C-])}}
|
||||
\entry{character-search-backward (M-C-])}{154}{\code {character-search-backward (M-C-])}}
|
||||
\entry{skip-csi-sequence ()}{154}{\code {skip-csi-sequence ()}}
|
||||
\entry{insert-comment (M-#)}{154}{\code {insert-comment (M-#)}}
|
||||
\entry{dump-functions ()}{154}{\code {dump-functions ()}}
|
||||
\entry{dump-variables ()}{154}{\code {dump-variables ()}}
|
||||
\entry{dump-macros ()}{154}{\code {dump-macros ()}}
|
||||
\entry{execute-named-command (M-x)}{154}{\code {execute-named-command (M-x)}}
|
||||
\entry{spell-correct-word (C-x s)}{155}{\code {spell-correct-word (C-x s)}}
|
||||
\entry{glob-complete-word (M-g)}{155}{\code {glob-complete-word (M-g)}}
|
||||
\entry{glob-expand-word (C-x *)}{155}{\code {glob-expand-word (C-x *)}}
|
||||
\entry{glob-list-expansions (C-x g)}{155}{\code {glob-list-expansions (C-x g)}}
|
||||
\entry{shell-expand-line (M-C-e)}{155}{\code {shell-expand-line (M-C-e)}}
|
||||
\entry{history-expand-line (M-^)}{155}{\code {history-expand-line (M-^)}}
|
||||
\entry{magic-space ()}{155}{\code {magic-space ()}}
|
||||
\entry{alias-expand-line ()}{155}{\code {alias-expand-line ()}}
|
||||
\entry{history-and-alias-expand-line ()}{155}{\code {history-and-alias-expand-line ()}}
|
||||
\entry{insert-last-argument (M-. or M-_)}{155}{\code {insert-last-argument (M-. or M-_)}}
|
||||
\entry{edit-and-execute-command (C-x C-e)}{155}{\code {edit-and-execute-command (C-x C-e)}}
|
||||
\entry{display-shell-version (C-x C-v)}{155}{\code {display-shell-version (C-x C-v)}}
|
||||
|
||||
+115
-115
@@ -1,135 +1,135 @@
|
||||
\initial {A}
|
||||
\entry{\code {abort (C-g)}}{152}
|
||||
\entry{\code {accept-line (Newline or Return)}}{145}
|
||||
\entry{\code {alias-expand-line ()}}{154}
|
||||
\entry{\code {abort (C-g)}}{153}
|
||||
\entry{\code {accept-line (Newline or Return)}}{146}
|
||||
\entry{\code {alias-expand-line ()}}{155}
|
||||
\initial {B}
|
||||
\entry{\code {backward-char (C-b)}}{144}
|
||||
\entry{\code {backward-delete-char (Rubout)}}{147}
|
||||
\entry{\code {backward-kill-line (C-x Rubout)}}{148}
|
||||
\entry{\code {backward-kill-word (M-\key {DEL})}}{149}
|
||||
\entry{\code {backward-word (M-b)}}{144}
|
||||
\entry{\code {beginning-of-history (M-<)}}{145}
|
||||
\entry{\code {beginning-of-line (C-a)}}{144}
|
||||
\entry{\code {bracketed-paste-begin ()}}{147}
|
||||
\entry{\code {backward-char (C-b)}}{145}
|
||||
\entry{\code {backward-delete-char (Rubout)}}{148}
|
||||
\entry{\code {backward-kill-line (C-x Rubout)}}{149}
|
||||
\entry{\code {backward-kill-word (M-\key {DEL})}}{150}
|
||||
\entry{\code {backward-word (M-b)}}{145}
|
||||
\entry{\code {beginning-of-history (M-<)}}{146}
|
||||
\entry{\code {beginning-of-line (C-a)}}{145}
|
||||
\entry{\code {bracketed-paste-begin ()}}{148}
|
||||
\initial {C}
|
||||
\entry{\code {call-last-kbd-macro (C-x e)}}{152}
|
||||
\entry{\code {capitalize-word (M-c)}}{148}
|
||||
\entry{\code {character-search (C-])}}{153}
|
||||
\entry{\code {character-search-backward (M-C-])}}{153}
|
||||
\entry{\code {clear-display (M-C-l)}}{145}
|
||||
\entry{\code {clear-screen (C-l)}}{145}
|
||||
\entry{\code {complete (\key {TAB})}}{150}
|
||||
\entry{\code {complete-command (M-!)}}{151}
|
||||
\entry{\code {complete-filename (M-/)}}{151}
|
||||
\entry{\code {complete-hostname (M-@)}}{151}
|
||||
\entry{\code {complete-into-braces (M-{\tt \char 123})}}{152}
|
||||
\entry{\code {complete-username (M-~)}}{151}
|
||||
\entry{\code {complete-variable (M-$)}}{151}
|
||||
\entry{\code {copy-backward-word ()}}{149}
|
||||
\entry{\code {copy-forward-word ()}}{149}
|
||||
\entry{\code {copy-region-as-kill ()}}{149}
|
||||
\entry{\code {call-last-kbd-macro (C-x e)}}{153}
|
||||
\entry{\code {capitalize-word (M-c)}}{149}
|
||||
\entry{\code {character-search (C-])}}{154}
|
||||
\entry{\code {character-search-backward (M-C-])}}{154}
|
||||
\entry{\code {clear-display (M-C-l)}}{146}
|
||||
\entry{\code {clear-screen (C-l)}}{146}
|
||||
\entry{\code {complete (\key {TAB})}}{151}
|
||||
\entry{\code {complete-command (M-!)}}{152}
|
||||
\entry{\code {complete-filename (M-/)}}{152}
|
||||
\entry{\code {complete-hostname (M-@)}}{152}
|
||||
\entry{\code {complete-into-braces (M-{\tt \char 123})}}{153}
|
||||
\entry{\code {complete-username (M-~)}}{152}
|
||||
\entry{\code {complete-variable (M-$)}}{152}
|
||||
\entry{\code {copy-backward-word ()}}{150}
|
||||
\entry{\code {copy-forward-word ()}}{150}
|
||||
\entry{\code {copy-region-as-kill ()}}{150}
|
||||
\initial {D}
|
||||
\entry{\code {dabbrev-expand ()}}{151}
|
||||
\entry{\code {delete-char (C-d)}}{147}
|
||||
\entry{\code {delete-char-or-list ()}}{151}
|
||||
\entry{\code {delete-horizontal-space ()}}{149}
|
||||
\entry{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{150}
|
||||
\entry{\code {display-shell-version (C-x C-v)}}{154}
|
||||
\entry{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{152}
|
||||
\entry{\code {downcase-word (M-l)}}{148}
|
||||
\entry{\code {dump-functions ()}}{153}
|
||||
\entry{\code {dump-macros ()}}{153}
|
||||
\entry{\code {dump-variables ()}}{153}
|
||||
\entry{\code {dynamic-complete-history (M-\key {TAB})}}{151}
|
||||
\entry{\code {dabbrev-expand ()}}{152}
|
||||
\entry{\code {delete-char (C-d)}}{148}
|
||||
\entry{\code {delete-char-or-list ()}}{152}
|
||||
\entry{\code {delete-horizontal-space ()}}{150}
|
||||
\entry{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{151}
|
||||
\entry{\code {display-shell-version (C-x C-v)}}{155}
|
||||
\entry{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{153}
|
||||
\entry{\code {downcase-word (M-l)}}{149}
|
||||
\entry{\code {dump-functions ()}}{154}
|
||||
\entry{\code {dump-macros ()}}{154}
|
||||
\entry{\code {dump-variables ()}}{154}
|
||||
\entry{\code {dynamic-complete-history (M-\key {TAB})}}{152}
|
||||
\initial {E}
|
||||
\entry{\code {edit-and-execute-command (C-x C-e)}}{154}
|
||||
\entry{\code {end-kbd-macro (C-x ))}}{152}
|
||||
\entry{\code {\i {end-of-file} (usually C-d)}}{147}
|
||||
\entry{\code {end-of-history (M->)}}{145}
|
||||
\entry{\code {end-of-line (C-e)}}{144}
|
||||
\entry{\code {exchange-point-and-mark (C-x C-x)}}{152}
|
||||
\entry{\code {execute-named-command (M-x)}}{153}
|
||||
\entry{\code {edit-and-execute-command (C-x C-e)}}{155}
|
||||
\entry{\code {end-kbd-macro (C-x ))}}{153}
|
||||
\entry{\code {\i {end-of-file} (usually C-d)}}{148}
|
||||
\entry{\code {end-of-history (M->)}}{146}
|
||||
\entry{\code {end-of-line (C-e)}}{145}
|
||||
\entry{\code {exchange-point-and-mark (C-x C-x)}}{153}
|
||||
\entry{\code {execute-named-command (M-x)}}{154}
|
||||
\initial {F}
|
||||
\entry{\code {fetch-history ()}}{147}
|
||||
\entry{\code {forward-backward-delete-char ()}}{147}
|
||||
\entry{\code {forward-char (C-f)}}{144}
|
||||
\entry{\code {forward-search-history (C-s)}}{145}
|
||||
\entry{\code {forward-word (M-f)}}{144}
|
||||
\entry{\code {fetch-history ()}}{148}
|
||||
\entry{\code {forward-backward-delete-char ()}}{148}
|
||||
\entry{\code {forward-char (C-f)}}{145}
|
||||
\entry{\code {forward-search-history (C-s)}}{146}
|
||||
\entry{\code {forward-word (M-f)}}{145}
|
||||
\initial {G}
|
||||
\entry{\code {glob-complete-word (M-g)}}{154}
|
||||
\entry{\code {glob-expand-word (C-x *)}}{154}
|
||||
\entry{\code {glob-list-expansions (C-x g)}}{154}
|
||||
\entry{\code {glob-complete-word (M-g)}}{155}
|
||||
\entry{\code {glob-expand-word (C-x *)}}{155}
|
||||
\entry{\code {glob-list-expansions (C-x g)}}{155}
|
||||
\initial {H}
|
||||
\entry{\code {history-and-alias-expand-line ()}}{154}
|
||||
\entry{\code {history-expand-line (M-^)}}{154}
|
||||
\entry{\code {history-search-backward ()}}{146}
|
||||
\entry{\code {history-search-forward ()}}{146}
|
||||
\entry{\code {history-substring-search-backward ()}}{146}
|
||||
\entry{\code {history-substring-search-forward ()}}{146}
|
||||
\entry{\code {history-and-alias-expand-line ()}}{155}
|
||||
\entry{\code {history-expand-line (M-^)}}{155}
|
||||
\entry{\code {history-search-backward ()}}{147}
|
||||
\entry{\code {history-search-forward ()}}{147}
|
||||
\entry{\code {history-substring-search-backward ()}}{147}
|
||||
\entry{\code {history-substring-search-forward ()}}{147}
|
||||
\initial {I}
|
||||
\entry{\code {insert-comment (M-#)}}{153}
|
||||
\entry{\code {insert-completions (M-*)}}{150}
|
||||
\entry{\code {insert-last-argument (M-. or M-_)}}{154}
|
||||
\entry{\code {insert-comment (M-#)}}{154}
|
||||
\entry{\code {insert-completions (M-*)}}{151}
|
||||
\entry{\code {insert-last-argument (M-. or M-_)}}{155}
|
||||
\initial {K}
|
||||
\entry{\code {kill-line (C-k)}}{148}
|
||||
\entry{\code {kill-region ()}}{149}
|
||||
\entry{\code {kill-whole-line ()}}{149}
|
||||
\entry{\code {kill-word (M-d)}}{149}
|
||||
\entry{\code {kill-line (C-k)}}{149}
|
||||
\entry{\code {kill-region ()}}{150}
|
||||
\entry{\code {kill-whole-line ()}}{150}
|
||||
\entry{\code {kill-word (M-d)}}{150}
|
||||
\initial {M}
|
||||
\entry{\code {magic-space ()}}{154}
|
||||
\entry{\code {menu-complete ()}}{150}
|
||||
\entry{\code {menu-complete-backward ()}}{151}
|
||||
\entry{\code {magic-space ()}}{155}
|
||||
\entry{\code {menu-complete ()}}{151}
|
||||
\entry{\code {menu-complete-backward ()}}{152}
|
||||
\initial {N}
|
||||
\entry{\code {next-history (C-n)}}{145}
|
||||
\entry{\code {next-screen-line ()}}{145}
|
||||
\entry{\code {non-incremental-forward-search-history (M-n)}}{146}
|
||||
\entry{\code {non-incremental-reverse-search-history (M-p)}}{146}
|
||||
\entry{\code {next-history (C-n)}}{146}
|
||||
\entry{\code {next-screen-line ()}}{146}
|
||||
\entry{\code {non-incremental-forward-search-history (M-n)}}{147}
|
||||
\entry{\code {non-incremental-reverse-search-history (M-p)}}{147}
|
||||
\initial {O}
|
||||
\entry{\code {operate-and-get-next (C-o)}}{147}
|
||||
\entry{\code {overwrite-mode ()}}{148}
|
||||
\entry{\code {operate-and-get-next (C-o)}}{148}
|
||||
\entry{\code {overwrite-mode ()}}{149}
|
||||
\initial {P}
|
||||
\entry{\code {possible-command-completions (C-x !)}}{151}
|
||||
\entry{\code {possible-completions (M-?)}}{150}
|
||||
\entry{\code {possible-filename-completions (C-x /)}}{151}
|
||||
\entry{\code {possible-hostname-completions (C-x @)}}{151}
|
||||
\entry{\code {possible-username-completions (C-x ~)}}{151}
|
||||
\entry{\code {possible-variable-completions (C-x $)}}{151}
|
||||
\entry{\code {prefix-meta (\key {ESC})}}{152}
|
||||
\entry{\code {previous-history (C-p)}}{145}
|
||||
\entry{\code {previous-screen-line ()}}{145}
|
||||
\entry{\code {print-last-kbd-macro ()}}{152}
|
||||
\entry{\code {possible-command-completions (C-x !)}}{152}
|
||||
\entry{\code {possible-completions (M-?)}}{151}
|
||||
\entry{\code {possible-filename-completions (C-x /)}}{152}
|
||||
\entry{\code {possible-hostname-completions (C-x @)}}{152}
|
||||
\entry{\code {possible-username-completions (C-x ~)}}{152}
|
||||
\entry{\code {possible-variable-completions (C-x $)}}{152}
|
||||
\entry{\code {prefix-meta (\key {ESC})}}{153}
|
||||
\entry{\code {previous-history (C-p)}}{146}
|
||||
\entry{\code {previous-screen-line ()}}{146}
|
||||
\entry{\code {print-last-kbd-macro ()}}{153}
|
||||
\initial {Q}
|
||||
\entry{\code {quoted-insert (C-q or C-v)}}{147}
|
||||
\entry{\code {quoted-insert (C-q or C-v)}}{148}
|
||||
\initial {R}
|
||||
\entry{\code {re-read-init-file (C-x C-r)}}{152}
|
||||
\entry{\code {redraw-current-line ()}}{145}
|
||||
\entry{\code {reverse-search-history (C-r)}}{145}
|
||||
\entry{\code {revert-line (M-r)}}{152}
|
||||
\entry{\code {re-read-init-file (C-x C-r)}}{153}
|
||||
\entry{\code {redraw-current-line ()}}{146}
|
||||
\entry{\code {reverse-search-history (C-r)}}{146}
|
||||
\entry{\code {revert-line (M-r)}}{153}
|
||||
\initial {S}
|
||||
\entry{\code {self-insert (a, b, A, 1, !, \dots {})}}{147}
|
||||
\entry{\code {set-mark (C-@)}}{152}
|
||||
\entry{\code {shell-backward-kill-word ()}}{149}
|
||||
\entry{\code {shell-backward-word (M-C-b)}}{144}
|
||||
\entry{\code {shell-expand-line (M-C-e)}}{154}
|
||||
\entry{\code {shell-forward-word (M-C-f)}}{144}
|
||||
\entry{\code {shell-kill-word (M-C-d)}}{149}
|
||||
\entry{\code {shell-transpose-words (M-C-t)}}{148}
|
||||
\entry{\code {skip-csi-sequence ()}}{153}
|
||||
\entry{\code {spell-correct-word (C-x s)}}{154}
|
||||
\entry{\code {start-kbd-macro (C-x ()}}{152}
|
||||
\entry{\code {self-insert (a, b, A, 1, !, \dots {})}}{148}
|
||||
\entry{\code {set-mark (C-@)}}{153}
|
||||
\entry{\code {shell-backward-kill-word ()}}{150}
|
||||
\entry{\code {shell-backward-word (M-C-b)}}{145}
|
||||
\entry{\code {shell-expand-line (M-C-e)}}{155}
|
||||
\entry{\code {shell-forward-word (M-C-f)}}{145}
|
||||
\entry{\code {shell-kill-word (M-C-d)}}{150}
|
||||
\entry{\code {shell-transpose-words (M-C-t)}}{149}
|
||||
\entry{\code {skip-csi-sequence ()}}{154}
|
||||
\entry{\code {spell-correct-word (C-x s)}}{155}
|
||||
\entry{\code {start-kbd-macro (C-x ()}}{153}
|
||||
\initial {T}
|
||||
\entry{\code {tilde-expand (M-&)}}{152}
|
||||
\entry{\code {transpose-chars (C-t)}}{148}
|
||||
\entry{\code {transpose-words (M-t)}}{148}
|
||||
\entry{\code {tilde-expand (M-&)}}{153}
|
||||
\entry{\code {transpose-chars (C-t)}}{149}
|
||||
\entry{\code {transpose-words (M-t)}}{149}
|
||||
\initial {U}
|
||||
\entry{\code {undo (C-_ or C-x C-u)}}{152}
|
||||
\entry{\code {universal-argument ()}}{150}
|
||||
\entry{\code {unix-filename-rubout ()}}{149}
|
||||
\entry{\code {unix-line-discard (C-u)}}{148}
|
||||
\entry{\code {unix-word-rubout (C-w)}}{149}
|
||||
\entry{\code {upcase-word (M-u)}}{148}
|
||||
\entry{\code {undo (C-_ or C-x C-u)}}{153}
|
||||
\entry{\code {universal-argument ()}}{151}
|
||||
\entry{\code {unix-filename-rubout ()}}{150}
|
||||
\entry{\code {unix-line-discard (C-u)}}{149}
|
||||
\entry{\code {unix-word-rubout (C-w)}}{150}
|
||||
\entry{\code {upcase-word (M-u)}}{149}
|
||||
\initial {Y}
|
||||
\entry{\code {yank (C-y)}}{149}
|
||||
\entry{\code {yank-last-arg (M-. or M-_)}}{146}
|
||||
\entry{\code {yank-nth-arg (M-C-y)}}{146}
|
||||
\entry{\code {yank-pop (M-y)}}{149}
|
||||
\entry{\code {yank (C-y)}}{150}
|
||||
\entry{\code {yank-last-arg (M-. or M-_)}}{147}
|
||||
\entry{\code {yank-nth-arg (M-C-y)}}{147}
|
||||
\entry{\code {yank-pop (M-y)}}{150}
|
||||
|
||||
+169
-104
@@ -4,9 +4,9 @@
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<!-- This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.3, 10 October 2024).
|
||||
the Bash shell (version 5.3, 14 October 2024).
|
||||
|
||||
This is Edition 5.3, last updated 10 October 2024,
|
||||
This is Edition 5.3, last updated 14 October 2024,
|
||||
of The GNU Bash Reference Manual,
|
||||
for Bash, Version 5.3.
|
||||
|
||||
@@ -77,10 +77,10 @@ Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previou
|
||||
<h1 class="top" id="Bash-Features-1"><span>Bash Features<a class="copiable-link" href="#Bash-Features-1"> ¶</a></span></h1>
|
||||
|
||||
<p>This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.3, 10 October 2024).
|
||||
the Bash shell (version 5.3, 14 October 2024).
|
||||
The Bash home page is <a class="url" href="http://www.gnu.org/software/bash/">http://www.gnu.org/software/bash/</a>.
|
||||
</p>
|
||||
<p>This is Edition 5.3, last updated 10 October 2024,
|
||||
<p>This is Edition 5.3, last updated 14 October 2024,
|
||||
of <cite class="cite">The GNU Bash Reference Manual</cite>,
|
||||
for <code class="code">Bash</code>, Version 5.3.
|
||||
</p>
|
||||
@@ -2515,7 +2515,7 @@ corresponding element from the directory stack, as it would be displayed
|
||||
by the <code class="code">dirs</code> builtin invoked with the characters following tilde
|
||||
in the tilde-prefix as an argument (see <a class="pxref" href="#The-Directory-Stack">The Directory Stack</a>).
|
||||
If the tilde-prefix, sans the tilde, consists of a number without a
|
||||
leading ‘<samp class="samp">+</samp>’ or ‘<samp class="samp">-</samp>’, ‘<samp class="samp">+</samp>’ is assumed.
|
||||
leading ‘<samp class="samp">+</samp>’ or ‘<samp class="samp">-</samp>’, tilde expansion assumes ‘<samp class="samp">+</samp>’.
|
||||
</p>
|
||||
<p>The results of tilde expansion are treated as if they were quoted, so
|
||||
the replacement is not subject to word splitting and filename expansion.
|
||||
@@ -2665,7 +2665,7 @@ unset-or-null
|
||||
<dt><code class="code">${<var class="var">parameter</var>:=<var class="var">word</var>}</code></dt>
|
||||
<dd><p>If <var class="var">parameter</var> is unset or null, the expansion of <var class="var">word</var>
|
||||
is assigned to <var class="var">parameter</var>,
|
||||
and the result of the expansion
|
||||
and the result of the expansion
|
||||
is the final value of <var class="var">parameter</var>.
|
||||
Positional parameters and special parameters may not be assigned
|
||||
in this way.
|
||||
@@ -2684,9 +2684,10 @@ DEFAULT
|
||||
</dd>
|
||||
<dt><code class="code">${<var class="var">parameter</var>:?<var class="var">word</var>}</code></dt>
|
||||
<dd><p>If <var class="var">parameter</var>
|
||||
is null or unset, the expansion of <var class="var">word</var> (or a message
|
||||
is null or unset, the shell writes
|
||||
the expansion of <var class="var">word</var> (or a message
|
||||
to that effect if <var class="var">word</var>
|
||||
is not present) is written to the standard error and the shell, if it
|
||||
is not present) to the standard error and, if it
|
||||
is not interactive, exits with a non-zero status.
|
||||
An interactive shell does not exit, but does not execute the command
|
||||
associated with the expansion.
|
||||
@@ -9256,9 +9257,13 @@ before executing any of the commands on that line or the compound command.
|
||||
Aliases are expanded when a command is read, not when it is executed.
|
||||
Therefore, an
|
||||
alias definition appearing on the same line as another
|
||||
command does not take effect until the shell reads the next line of input.
|
||||
command does not take effect until the shell reads the next line of input,
|
||||
and an alias definition in a compound command does not take
|
||||
effect until the shell parses and executes the entire compound command.
|
||||
The commands following the alias definition
|
||||
on that line are not affected by the new alias.
|
||||
on that line,
|
||||
or in the rest of a compound command,
|
||||
are not affected by the new alias.
|
||||
This behavior is also an issue when functions are executed.
|
||||
Aliases are expanded when a function definition is read,
|
||||
not when the function is executed, because a function definition
|
||||
@@ -10472,33 +10477,44 @@ Next: <a href="#Job-Control-Builtins" accesskey="n" rel="next">Job Control Built
|
||||
<p>Job control
|
||||
refers to the ability to selectively stop (suspend)
|
||||
the execution of processes and continue (resume)
|
||||
their execution at a later point. A user typically employs
|
||||
their execution at a later point.
|
||||
A user typically employs
|
||||
this facility via an interactive interface supplied jointly
|
||||
by the operating system kernel’s terminal driver and Bash.
|
||||
</p>
|
||||
<p>The shell associates a <var class="var">job</var> with each pipeline. It keeps a
|
||||
table of currently executing jobs, which may be listed with the
|
||||
<code class="code">jobs</code> command. When Bash starts a job
|
||||
asynchronously, it prints a line that looks
|
||||
<p>The shell associates a <var class="var">job</var> with each pipeline.
|
||||
It keeps a
|
||||
table of currently executing jobs, which the
|
||||
<code class="code">jobs</code> command will display.
|
||||
Each job has a <em class="dfn">job number</em>, which <code class="code">jobs</code> displays between brackets.
|
||||
Job numbers start at 1.
|
||||
When Bash starts a job asynchronously, it prints a line that looks
|
||||
like:
|
||||
</p><div class="example">
|
||||
<pre class="example-preformatted">[1] 25647
|
||||
</pre></div>
|
||||
<p>indicating that this job is job number 1 and that the process <small class="sc">ID</small>
|
||||
of the last process in the pipeline associated with this job is
|
||||
25647. All of the processes in a single pipeline are members of
|
||||
the same job. Bash uses the <var class="var">job</var> abstraction as the
|
||||
basis for job control.
|
||||
25647.
|
||||
All of the processes in a single pipeline are members of
|
||||
the same job.
|
||||
Bash uses the <var class="var">job</var> abstraction as the basis for job control.
|
||||
</p>
|
||||
<p>To facilitate the implementation of the user interface to job
|
||||
control, the operating system maintains the notion of a current terminal
|
||||
process group <small class="sc">ID</small>. Members of this process group (processes whose
|
||||
<p>To facilitate the implementation of the user interface to job control,
|
||||
each process has a <em class="dfn">process group <small class="sc">ID</small></em>, and
|
||||
the operating system maintains the notion of a current terminal
|
||||
process group <small class="sc">ID</small>.
|
||||
Processes that have the same process group ID are said to be part of
|
||||
the same <em class="dfn">process group</em>.
|
||||
Members of the foreground process group (processes whose
|
||||
process group <small class="sc">ID</small> is equal to the current terminal process group
|
||||
<small class="sc">ID</small>) receive keyboard-generated signals such as <code class="code">SIGINT</code>.
|
||||
These processes are said to be in the foreground. Background
|
||||
processes are those whose process group <small class="sc">ID</small> differs from the
|
||||
terminal’s; such processes are immune to keyboard-generated
|
||||
signals. Only foreground processes are allowed to read from or, if
|
||||
Processes in the foreground process group are said to be
|
||||
foreground processes.
|
||||
Background processes
|
||||
are those whose process group <small class="sc">ID</small> differs from the terminal’s;
|
||||
such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if
|
||||
the user so specifies with <code class="code">stty tostop</code>, write to the terminal.
|
||||
Background processes which attempt to
|
||||
read from (write to when <code class="code">tostop</code> is in effect) the
|
||||
@@ -10507,72 +10523,101 @@ signal by the kernel’s terminal driver,
|
||||
which, unless caught, suspends the process.
|
||||
</p>
|
||||
<p>If the operating system on which Bash is running supports
|
||||
job control, Bash contains facilities to use it. Typing the
|
||||
job control, Bash contains facilities to use it.
|
||||
Typing the
|
||||
<em class="dfn">suspend</em> character (typically ‘<samp class="samp">^Z</samp>’, Control-Z) while a
|
||||
process is running causes that process to be stopped and returns
|
||||
control to Bash. Typing the <em class="dfn">delayed suspend</em> character
|
||||
(typically ‘<samp class="samp">^Y</samp>’, Control-Y) causes the process to be stopped
|
||||
when it attempts to read input from the terminal, and control to
|
||||
be returned to Bash. The user then manipulates the state of
|
||||
this job, using the <code class="code">bg</code> command to continue it in the
|
||||
background, the <code class="code">fg</code> command to continue it in the
|
||||
foreground, or the <code class="code">kill</code> command to kill it. A ‘<samp class="samp">^Z</samp>’
|
||||
process is running stops that process
|
||||
and returns control to Bash.
|
||||
Typing the <em class="dfn">delayed suspend</em> character
|
||||
(typically ‘<samp class="samp">^Y</samp>’, Control-Y) causes the process to stop
|
||||
when it attempts to read input from the terminal,
|
||||
and returns control to Bash.
|
||||
The user then manipulates the state of
|
||||
this job, using
|
||||
the <code class="code">bg</code> command to continue it in the background,
|
||||
the <code class="code">fg</code> command to continue it in the foreground, or
|
||||
the <code class="code">kill</code> command to kill it.
|
||||
The suspend character
|
||||
takes effect immediately, and has the additional side effect of
|
||||
causing pending output and typeahead to be discarded.
|
||||
discarding any pending output and typeahead.
|
||||
If you want to force a background process to stop, or stop a process
|
||||
that’s not associated with your terminal session,
|
||||
send it the <code class="code">SIGSTOP</code> signal using <code class="code">kill</code>.
|
||||
</p>
|
||||
<p>There are a number of ways to refer to a job in the shell. The
|
||||
character ‘<samp class="samp">%</samp>’ introduces a job specification (<em class="dfn">jobspec</em>).
|
||||
<p>There are a number of ways to refer to a job in the shell.
|
||||
The ‘<samp class="samp">%</samp>’ character introduces a <em class="dfn">job specification</em> (jobspec).
|
||||
</p>
|
||||
<p>Job number <code class="code">n</code> may be referred to as ‘<samp class="samp">%n</samp>’.
|
||||
The symbols ‘<samp class="samp">%%</samp>’ and ‘<samp class="samp">%+</samp>’ refer to the shell’s notion of the
|
||||
current job, which is the last job stopped while it was in the foreground
|
||||
or started in the background.
|
||||
A job may also be referred to
|
||||
using a prefix of the name used to start it,
|
||||
or using a substring that appears in its command line.
|
||||
For example, ‘<samp class="samp">%ce</samp>’ refers
|
||||
to a job whose command name begins with ‘<samp class="samp">ce</samp>’.
|
||||
Using ‘<samp class="samp">%?ce</samp>’, on the
|
||||
other hand, refers to any job containing the string ‘<samp class="samp">ce</samp>’ in
|
||||
its command line.
|
||||
If the prefix or substring matches more than one job,
|
||||
Bash reports an error.
|
||||
</p>
|
||||
<p>The symbols ‘<samp class="samp">%%</samp>’ and ‘<samp class="samp">%+</samp>’ refer to the shell’s notion of the
|
||||
<em class="dfn">current job</em>.
|
||||
A single ‘<samp class="samp">%</samp>’ (with no accompanying job specification) also refers
|
||||
to the current job.
|
||||
The previous job may be referenced using ‘<samp class="samp">%-</samp>’.
|
||||
‘<samp class="samp">%-</samp>’ refers to the <em class="dfn">previous job</em>.
|
||||
When a job starts in the background,
|
||||
a job stops while in the foreground,
|
||||
or a job is resumed in the background,
|
||||
it becomes the current job.
|
||||
The job that was the current job becomes the previous job.
|
||||
When the current job terminates, the previous job becomes the
|
||||
current job.
|
||||
If there is only a single job, ‘<samp class="samp">%+</samp>’ and ‘<samp class="samp">%-</samp>’ can both be used
|
||||
to refer to that job.
|
||||
In output pertaining to jobs (e.g., the output of the <code class="code">jobs</code>
|
||||
command), the current job is always flagged with a ‘<samp class="samp">+</samp>’, and the
|
||||
command), the current job is always marked with a ‘<samp class="samp">+</samp>’, and the
|
||||
previous job with a ‘<samp class="samp">-</samp>’.
|
||||
</p>
|
||||
<p>A job may also be referred to
|
||||
using a prefix of the name used to start it, or using a substring
|
||||
that appears in its command line. For example, ‘<samp class="samp">%ce</samp>’ refers
|
||||
to a stopped job whose command name begins with ‘<samp class="samp">ce</samp>’.
|
||||
Using ‘<samp class="samp">%?ce</samp>’, on the
|
||||
other hand, refers to any job containing the string ‘<samp class="samp">ce</samp>’ in
|
||||
its command line. If the prefix or substring matches more than one job,
|
||||
Bash reports an error.
|
||||
</p>
|
||||
<p>Simply naming a job can be used to bring it into the foreground:
|
||||
‘<samp class="samp">%1</samp>’ is a synonym for ‘<samp class="samp">fg %1</samp>’, bringing job 1 from the
|
||||
background into the foreground. Similarly, ‘<samp class="samp">%1 &</samp>’ resumes
|
||||
job 1 in the background, equivalent to ‘<samp class="samp">bg %1</samp>’
|
||||
background into the foreground.
|
||||
Similarly, ‘<samp class="samp">%1 &</samp>’ resumes
|
||||
job 1 in the background, equivalent to ‘<samp class="samp">bg %1</samp>’.
|
||||
</p>
|
||||
<p>The shell learns immediately whenever a job changes state.
|
||||
Normally, Bash waits until it is about to print a prompt
|
||||
before reporting changes in a job’s status so as to not interrupt
|
||||
Normally, Bash waits until it is about to print a prompt before
|
||||
notifying the user about
|
||||
changes in a job’s status so as to not interrupt
|
||||
any other output,
|
||||
though it will notify of changes in a job’s status after a
|
||||
foreground command in
|
||||
a list completes, before executing the next command.
|
||||
a list completes, before executing the next command in the list.
|
||||
If the <samp class="option">-b</samp> option to the <code class="code">set</code> builtin is enabled,
|
||||
Bash reports such changes immediately (see <a class="pxref" href="#The-Set-Builtin">The Set Builtin</a>).
|
||||
Any trap on <code class="code">SIGCHLD</code> is executed for each child process
|
||||
that exits.
|
||||
Bash executes any trap on <code class="code">SIGCHLD</code>
|
||||
for each child process that terminates.
|
||||
</p>
|
||||
<p>If an attempt to exit Bash is made while jobs are stopped, (or running, if
|
||||
<p>When a job terminates and Bash notifies the user about it,
|
||||
Bash removes the job from the jobs table.
|
||||
It will not appear in <code class="code">jobs</code> output, but <code class="code">wait</code> will
|
||||
report its exit status, as long as it’s supplied the process ID
|
||||
associated with the job as an argument.
|
||||
When the table is empty, job numbers start over at 1.
|
||||
</p>
|
||||
<p>If a user attempts to exit
|
||||
Bash while jobs are stopped, (or running, if
|
||||
the <code class="code">checkjobs</code> option is enabled – see <a class="ref" href="#The-Shopt-Builtin">The Shopt Builtin</a>), the
|
||||
shell prints a warning message, and if the <code class="code">checkjobs</code> option is
|
||||
enabled, lists the jobs and their statuses.
|
||||
The <code class="code">jobs</code> command may then be used to inspect their status.
|
||||
If a second attempt to exit is made without an intervening command,
|
||||
Bash does not print another warning, and any stopped jobs are terminated.
|
||||
If the user immediately attempts to exit again,
|
||||
without an intervening command,
|
||||
Bash does not print another warning, and
|
||||
terminates any stopped jobs.
|
||||
</p>
|
||||
<p>When the shell is waiting for a job or process using the <code class="code">wait</code>
|
||||
builtin, and job control is enabled, <code class="code">wait</code> will return when the
|
||||
job changes state. The <samp class="option">-f</samp> option causes <code class="code">wait</code> to wait
|
||||
job changes state.
|
||||
The <samp class="option">-f</samp> option causes <code class="code">wait</code> to wait
|
||||
until the job or process terminates before returning.
|
||||
</p>
|
||||
<hr>
|
||||
@@ -10592,8 +10637,9 @@ Next: <a href="#Job-Control-Variables" accesskey="n" rel="next">Job Control Vari
|
||||
|
||||
<p>Resume each suspended job <var class="var">jobspec</var> in the background, as if it
|
||||
had been started with ‘<samp class="samp">&</samp>’.
|
||||
If <var class="var">jobspec</var> is not supplied, the current job is used.
|
||||
The return status is zero unless it is run when job control is not
|
||||
If <var class="var">jobspec</var> is not supplied, the shell uses its
|
||||
notion of the current job.
|
||||
<code class="code">bg</code> returns zero unless it is run when job control is not
|
||||
enabled, or, when run with job control enabled, any
|
||||
<var class="var">jobspec</var> was not found or specifies a job
|
||||
that was started without job control.
|
||||
@@ -10605,7 +10651,7 @@ that was started without job control.
|
||||
</pre></div>
|
||||
|
||||
<p>Resume the job <var class="var">jobspec</var> in the foreground and make it the current job.
|
||||
If <var class="var">jobspec</var> is not supplied, resume the current job.
|
||||
If <var class="var">jobspec</var> is not supplied, <code class="code">fg</code> resumes the current job.
|
||||
The return status is that of the command placed into the foreground,
|
||||
or non-zero if run when job control is disabled or, when run with
|
||||
job control enabled, <var class="var">jobspec</var> does not specify a valid job or
|
||||
@@ -10647,6 +10693,10 @@ the user was last notified of their status.
|
||||
<p>If <var class="var">jobspec</var> is supplied,
|
||||
<code class="code">jobs</code> restricts output to information about that job.
|
||||
If <var class="var">jobspec</var> is not supplied, <code class="code">jobs</code> lists the status of all jobs.
|
||||
The return status is zero unless an invalid option is encountered
|
||||
or an invalid
|
||||
<var class="var">jobspec</var>
|
||||
is supplied.
|
||||
</p>
|
||||
<p>If the <samp class="option">-x</samp> option is supplied, <code class="code">jobs</code> replaces any
|
||||
<var class="var">jobspec</var> found in <var class="var">command</var> or <var class="var">arguments</var> with the
|
||||
@@ -10656,12 +10706,14 @@ passing it <var class="var">argument</var>s, returning its exit status.
|
||||
</dd>
|
||||
<dt><a id="index-kill"></a><span><code class="code">kill</code><a class="copiable-link" href="#index-kill"> ¶</a></span></dt>
|
||||
<dd><div class="example">
|
||||
<pre class="example-preformatted">kill [-s <var class="var">sigspec</var>] [-n <var class="var">signum</var>] [-<var class="var">sigspec</var>] <var class="var">jobspec</var> or <var class="var">pid</var>
|
||||
<pre class="example-preformatted">kill [-s <var class="var">sigspec</var>] [-n <var class="var">signum</var>] [-<var class="var">sigspec</var>] <var class="var">id</var> [...]
|
||||
kill -l|-L [<var class="var">exit_status</var>]
|
||||
</pre></div>
|
||||
|
||||
<p>Send a signal specified by <var class="var">sigspec</var> or <var class="var">signum</var> to the process
|
||||
named by job specification <var class="var">jobspec</var> or process <small class="sc">ID</small> <var class="var">pid</var>.
|
||||
<p>Send a signal specified by <var class="var">sigspec</var> or <var class="var">signum</var> to the processes
|
||||
named by each <var class="var">id</var>.
|
||||
Each <var class="var">id</var> may be a
|
||||
job specification <var class="var">jobspec</var> or process <small class="sc">ID</small> <var class="var">pid</var>.
|
||||
<var class="var">sigspec</var> is either a case-insensitive signal name such as
|
||||
<code class="code">SIGINT</code> (with or without the <code class="code">SIG</code> prefix)
|
||||
or a signal number; <var class="var">signum</var> is a signal number.
|
||||
@@ -10669,11 +10721,15 @@ If <var class="var">sigspec</var> and <var class="var">signum</var> are not pres
|
||||
sends <code class="code">SIGTERM</code>.
|
||||
</p>
|
||||
<p>The <samp class="option">-l</samp> option lists the signal names.
|
||||
If any arguments are supplied when <samp class="option">-l</samp> is supplied, the names of the
|
||||
signals corresponding to the arguments are listed, and the return status
|
||||
is zero.
|
||||
If any arguments are supplied when <samp class="option">-l</samp> is supplied,
|
||||
<code class="code">kill</code> lists the names of the signals corresponding to the arguments,
|
||||
and the return status is zero.
|
||||
<var class="var">exit_status</var> is a number specifying a signal number or the exit
|
||||
status of a process terminated by a signal.
|
||||
status of a process terminated by a signal;
|
||||
if it is supplied, <code class="code">kill</code> prints the name of the signal that caused
|
||||
the process to terminate.
|
||||
<code class="code">kill</code> assumes that process exit statuses are greater than 128;
|
||||
anything less than that is a signal number.
|
||||
The <samp class="option">-L</samp> option is equivalent to <samp class="option">-l</samp>.
|
||||
</p>
|
||||
<p>The return status is zero if at least one signal was successfully sent,
|
||||
@@ -10687,8 +10743,9 @@ or non-zero if an error occurs or an invalid option is encountered.
|
||||
|
||||
<p>Wait until the child process specified by each <var class="var">id</var> exits and
|
||||
return the exit status of the last <var class="var">id</var>.
|
||||
Each <var class="var">id</var> may be a <var class="var">pid</var> or job specification <var class="var">jobspec</var>;
|
||||
if a job spec is supplied, <code class="code">wait</code> waits for all processes in the job.
|
||||
Each <var class="var">id</var> may be a process <small class="sc">ID</small> <var class="var">pid</var>
|
||||
or a job specification <var class="var">jobspec</var>;
|
||||
if a jobspec is supplied, <code class="code">wait</code> waits for all processes in the job.
|
||||
</p>
|
||||
<p>If no options or <var class="var">id</var>s are supplied,
|
||||
<code class="code">wait</code> waits for all running background jobs and
|
||||
@@ -10697,20 +10754,21 @@ if its process id is the same as <var class="var">$!</var>,
|
||||
and the return status is zero.
|
||||
</p>
|
||||
<p>If the <samp class="option">-n</samp> option is supplied, <code class="code">wait</code> waits for any one of
|
||||
the <var class="var">id</var>s or, if no <var class="var">id</var>s are supplied, any job
|
||||
or process substitution,
|
||||
the <var class="var">id</var>s or,
|
||||
if no <var class="var">id</var>s are supplied, any job or process substitution,
|
||||
to complete and returns its exit status.
|
||||
If none of the supplied <var class="var">id</var>s is a child of the shell,
|
||||
or if no arguments are supplied and the shell has no unwaited-for children,
|
||||
the exit status is 127.
|
||||
</p>
|
||||
<p>If the <samp class="option">-p</samp> option is supplied, the process or job identifier
|
||||
of the job for which the exit status is returned is assigned to the
|
||||
<p>If the <samp class="option">-p</samp> option is supplied, <code class="code">wait</code> assigns
|
||||
the process or job identifier of the job
|
||||
for which the exit status is returned to the
|
||||
variable <var class="var">varname</var> named by the option argument.
|
||||
The variable,
|
||||
which cannot be readonly,
|
||||
will be unset initially, before any assignment.
|
||||
This is useful only when the <samp class="option">-n</samp> option is supplied.
|
||||
This is useful only when used with the <samp class="option">-n</samp> option.
|
||||
</p>
|
||||
<p>Supplying the <samp class="option">-f</samp> option, when job control is enabled,
|
||||
forces <code class="code">wait</code> to wait for each <var class="var">id</var> to terminate before
|
||||
@@ -10732,21 +10790,27 @@ Otherwise, the return status is the exit status of the last <var class="var">id
|
||||
|
||||
<p>Without options, remove each <var class="var">id</var> from the table of
|
||||
active jobs.
|
||||
Each <var class="var">id</var> may be a <var class="var">pid</var> or job specification <var class="var">jobspec</var>;
|
||||
Each <var class="var">id</var> may be a job specification <var class="var">jobspec</var>
|
||||
or a process <small class="sc">ID</small> <var class="var">pid</var>;
|
||||
if <var class="var">id</var> is a <var class="var">pid</var>,
|
||||
<code class="code">disown</code> uses the job containing <var class="var">pid</var>.
|
||||
If the <samp class="option">-h</samp> option is supplied, the job is not removed from the table,
|
||||
but is marked so that <code class="code">SIGHUP</code> is not sent to the job if the shell
|
||||
receives a <code class="code">SIGHUP</code>.
|
||||
If <var class="var">id</var> is not present, and neither the <samp class="option">-a</samp> nor the
|
||||
<samp class="option">-r</samp> option is supplied, <code class="code">disown</code> removes the current job.
|
||||
<code class="code">disown</code> uses the job containing <var class="var">pid</var> as <var class="var">jobspec</var>.
|
||||
</p>
|
||||
<p>If the <samp class="option">-h</samp> option is supplied,
|
||||
<code class="code">disown</code> does not remove the jobs corresponding to each <code class="code">id</code>
|
||||
from the jobs table,
|
||||
but rather marks them so the shell does not send
|
||||
<code class="code">SIGHUP</code>
|
||||
to the job if the shell receives a
|
||||
<code class="code">SIGHUP</code>.
|
||||
</p>
|
||||
<p>If no <var class="var">id</var> is supplied, the <samp class="option">-a</samp> option means to remove or
|
||||
mark all jobs; the <samp class="option">-r</samp> option without an <var class="var">id</var>
|
||||
argument restricts operation to running jobs.
|
||||
argument removes or marks running jobs.
|
||||
If no <var class="var">id</var> is supplied,
|
||||
and neither the <samp class="option">-a</samp> nor the <samp class="option">-r</samp> option is supplied,
|
||||
<code class="code">disown</code> removes or marks the current job.
|
||||
</p>
|
||||
<p>The return value is 0 unless an <var class="var">id</var>
|
||||
does not specify a valid job.
|
||||
<p>The return value is 0 unless an <var class="var">id</var> does not specify a valid job.
|
||||
</p>
|
||||
</dd>
|
||||
<dt><a id="index-suspend"></a><span><code class="code">suspend</code><a class="copiable-link" href="#index-suspend"> ¶</a></span></dt>
|
||||
@@ -10769,8 +10833,8 @@ is not supplied.
|
||||
</dl>
|
||||
|
||||
<p>When job control is not active, the <code class="code">kill</code> and <code class="code">wait</code>
|
||||
builtins do not accept <var class="var">jobspec</var> arguments. They must be
|
||||
supplied process <small class="sc">ID</small>s.
|
||||
builtins do not accept <var class="var">jobspec</var> arguments.
|
||||
They must be supplied process <small class="sc">ID</small>s.
|
||||
</p>
|
||||
<hr>
|
||||
</div>
|
||||
@@ -10785,24 +10849,24 @@ Previous: <a href="#Job-Control-Builtins" accesskey="p" rel="prev">Job Control B
|
||||
<dt><a id="index-auto_005fresume"></a><span><code class="code">auto_resume</code><a class="copiable-link" href="#index-auto_005fresume"> ¶</a></span></dt>
|
||||
<dd><p>This variable controls how the shell interacts with the user and
|
||||
job control.
|
||||
If this variable exists then single-word simple
|
||||
commands without redirections are treated as candidates for resumption
|
||||
If this variable exists then simple commands
|
||||
consisting of only a single word,
|
||||
without redirections, are treated as candidates for resumption
|
||||
of an existing job.
|
||||
There is no ambiguity allowed; if there is more than one job
|
||||
beginning with the string typed, then
|
||||
the most recently accessed job is selected.
|
||||
beginning with or containing the word, then
|
||||
this selects the most recently accessed job.
|
||||
The name of a stopped job, in this context, is the command line
|
||||
used to start it.
|
||||
used to start it, as displayed by <code class="code">jobs</code>.
|
||||
If this variable is set to the value ‘<samp class="samp">exact</samp>’,
|
||||
the string supplied must match the name of a stopped job exactly;
|
||||
the word must match the name of a stopped job exactly;
|
||||
if set to ‘<samp class="samp">substring</samp>’,
|
||||
the string supplied needs to match a substring of the name of a
|
||||
stopped job.
|
||||
the word needs to match a substring of the name of a stopped job.
|
||||
The ‘<samp class="samp">substring</samp>’ value provides functionality
|
||||
analogous to the ‘<samp class="samp">%?</samp>’ job <small class="sc">ID</small> (see <a class="pxref" href="#Job-Control-Basics">Job Control Basics</a>).
|
||||
If set to any other value, the supplied string must
|
||||
be a prefix of a stopped job’s name; this provides functionality
|
||||
analogous to the ‘<samp class="samp">%</samp>’ job <small class="sc">ID</small>.
|
||||
analogous to the ‘<samp class="samp">%?string</samp>’ job <small class="sc">ID</small> (see <a class="pxref" href="#Job-Control-Basics">Job Control Basics</a>).
|
||||
If set to any other value (e.g., ‘<samp class="samp">prefix</samp>’),
|
||||
the word must be a prefix of a stopped job’s name;
|
||||
this provides functionality analogous to the ‘<samp class="samp">%string</samp>’ job <small class="sc">ID</small>.
|
||||
</p>
|
||||
</dd>
|
||||
</dl>
|
||||
@@ -11793,7 +11857,7 @@ expressed on the right hand side (that is, to insert the text
|
||||
<var class="var">NEWLINE</var>,
|
||||
<var class="var">RET</var>,
|
||||
<var class="var">RETURN</var>,
|
||||
<var class="var">RUBOUT</var>,
|
||||
<var class="var">RUBOUT</var> (a destructive backspace),
|
||||
<var class="var">SPACE</var>,
|
||||
<var class="var">SPC</var>,
|
||||
and
|
||||
@@ -12432,6 +12496,7 @@ interprets it as the end of input and returns <small class="sc">EOF</small>.
|
||||
If this function is bound to the
|
||||
same character as the tty <small class="sc">EOF</small> character, as <kbd class="kbd">C-d</kbd>
|
||||
commonly is, see above for the effects.
|
||||
This may also be bound to the Delete key on some keyboards.
|
||||
</p>
|
||||
</dd>
|
||||
<dt><a id="index-backward_002ddelete_002dchar-_0028Rubout_0029"></a><span><code class="code">backward-delete-char (Rubout)</code><a class="copiable-link" href="#index-backward_002ddelete_002dchar-_0028Rubout_0029"> ¶</a></span></dt>
|
||||
|
||||
+268
-241
@@ -2,9 +2,9 @@ This is bashref.info, produced by makeinfo version 7.1 from
|
||||
bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.3, 10 October 2024).
|
||||
Bash shell (version 5.3, 14 October 2024).
|
||||
|
||||
This is Edition 5.3, last updated 10 October 2024, of ‘The GNU Bash
|
||||
This is Edition 5.3, last updated 14 October 2024, of ‘The GNU Bash
|
||||
Reference Manual’, for ‘Bash’, Version 5.3.
|
||||
|
||||
Copyright © 1988-2024 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.3, 10 October 2024). The Bash home page is
|
||||
Bash shell (version 5.3, 14 October 2024). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.3, last updated 10 October 2024, of ‘The GNU Bash
|
||||
This is Edition 5.3, last updated 14 October 2024, of ‘The GNU Bash
|
||||
Reference Manual’, for ‘Bash’, Version 5.3.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -1775,7 +1775,7 @@ replaced with the corresponding element from the directory stack, as it
|
||||
would be displayed by the ‘dirs’ builtin invoked with the characters
|
||||
following tilde in the tilde-prefix as an argument (*note The Directory
|
||||
Stack::). If the tilde-prefix, sans the tilde, consists of a number
|
||||
without a leading ‘+’ or ‘-’, ‘+’ is assumed.
|
||||
without a leading ‘+’ or ‘-’, tilde expansion assumes ‘+’.
|
||||
|
||||
The results of tilde expansion are treated as if they were quoted, so
|
||||
the replacement is not subject to word splitting and filename expansion.
|
||||
@@ -1905,12 +1905,12 @@ omitted, the operator tests only for existence.
|
||||
DEFAULT
|
||||
|
||||
‘${PARAMETER:?WORD}’
|
||||
If PARAMETER is null or unset, the expansion of WORD (or a message
|
||||
to that effect if WORD is not present) is written to the standard
|
||||
error and the shell, if it is not interactive, exits with a
|
||||
non-zero status. An interactive shell does not exit, but does not
|
||||
execute the command associated with the expansion. Otherwise, the
|
||||
value of PARAMETER is substituted.
|
||||
If PARAMETER is null or unset, the shell writes the expansion of
|
||||
WORD (or a message to that effect if WORD is not present) to the
|
||||
standard error and, if it is not interactive, exits with a non-zero
|
||||
status. An interactive shell does not exit, but does not execute
|
||||
the command associated with the expansion. Otherwise, the value of
|
||||
PARAMETER is substituted.
|
||||
|
||||
$ var=
|
||||
$ : ${var:?var is unset or null}
|
||||
@@ -7072,15 +7072,17 @@ all lines that make up a compound command, before executing any of the
|
||||
commands on that line or the compound command. Aliases are expanded
|
||||
when a command is read, not when it is executed. Therefore, an alias
|
||||
definition appearing on the same line as another command does not take
|
||||
effect until the shell reads the next line of input. The commands
|
||||
following the alias definition on that line are not affected by the new
|
||||
alias. This behavior is also an issue when functions are executed.
|
||||
Aliases are expanded when a function definition is read, not when the
|
||||
function is executed, because a function definition is itself a command.
|
||||
As a consequence, aliases defined in a function are not available until
|
||||
after that function is executed. To be safe, always put alias
|
||||
definitions on a separate line, and do not use ‘alias’ in compound
|
||||
commands.
|
||||
effect until the shell reads the next line of input, and an alias
|
||||
definition in a compound command does not take effect until the shell
|
||||
parses and executes the entire compound command. The commands following
|
||||
the alias definition on that line, or in the rest of a compound command,
|
||||
are not affected by the new alias. This behavior is also an issue when
|
||||
functions are executed. Aliases are expanded when a function definition
|
||||
is read, not when the function is executed, because a function
|
||||
definition is itself a command. As a consequence, aliases defined in a
|
||||
function are not available until after that function is executed. To be
|
||||
safe, always put alias definitions on a separate line, and do not use
|
||||
‘alias’ in compound commands.
|
||||
|
||||
For almost every purpose, shell functions are preferred over aliases.
|
||||
|
||||
@@ -8066,8 +8068,10 @@ interface supplied jointly by the operating system kernel's terminal
|
||||
driver and Bash.
|
||||
|
||||
The shell associates a JOB with each pipeline. It keeps a table of
|
||||
currently executing jobs, which may be listed with the ‘jobs’ command.
|
||||
When Bash starts a job asynchronously, it prints a line that looks like:
|
||||
currently executing jobs, which the ‘jobs’ command will display. Each
|
||||
job has a “job number”, which ‘jobs’ displays between brackets. Job
|
||||
numbers start at 1. When Bash starts a job asynchronously, it prints a
|
||||
line that looks like:
|
||||
[1] 25647
|
||||
indicating that this job is job number 1 and that the process ID of the
|
||||
last process in the pipeline associated with this job is 25647. All of
|
||||
@@ -8075,72 +8079,85 @@ the processes in a single pipeline are members of the same job. Bash
|
||||
uses the JOB abstraction as the basis for job control.
|
||||
|
||||
To facilitate the implementation of the user interface to job
|
||||
control, the operating system maintains the notion of a current terminal
|
||||
process group ID. Members of this process group (processes whose
|
||||
process group ID is equal to the current terminal process group ID)
|
||||
receive keyboard-generated signals such as ‘SIGINT’. These processes
|
||||
are said to be in the foreground. Background processes are those whose
|
||||
process group ID differs from the terminal's; such processes are immune
|
||||
to keyboard-generated signals. Only foreground processes are allowed to
|
||||
read from or, if the user so specifies with ‘stty tostop’, write to the
|
||||
terminal. Background processes which attempt to read from (write to
|
||||
when ‘tostop’ is in effect) the terminal are sent a ‘SIGTTIN’
|
||||
(‘SIGTTOU’) signal by the kernel's terminal driver, which, unless
|
||||
caught, suspends the process.
|
||||
control, each process has a “process group ID”, and the operating system
|
||||
maintains the notion of a current terminal process group ID. Processes
|
||||
that have the same process group ID are said to be part of the same
|
||||
“process group”. Members of the foreground process group (processes
|
||||
whose process group ID is equal to the current terminal process group
|
||||
ID) receive keyboard-generated signals such as ‘SIGINT’. Processes in
|
||||
the foreground process group are said to be foreground processes.
|
||||
Background processes are those whose process group ID differs from the
|
||||
terminal's; such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if the user so
|
||||
specifies with ‘stty tostop’, write to the terminal. Background
|
||||
processes which attempt to read from (write to when ‘tostop’ is in
|
||||
effect) the terminal are sent a ‘SIGTTIN’ (‘SIGTTOU’) signal by the
|
||||
kernel's terminal driver, which, unless caught, suspends the process.
|
||||
|
||||
If the operating system on which Bash is running supports job
|
||||
control, Bash contains facilities to use it. Typing the “suspend”
|
||||
character (typically ‘^Z’, Control-Z) while a process is running causes
|
||||
that process to be stopped and returns control to Bash. Typing the
|
||||
“delayed suspend” character (typically ‘^Y’, Control-Y) causes the
|
||||
process to be stopped when it attempts to read input from the terminal,
|
||||
and control to be returned to Bash. The user then manipulates the state
|
||||
of this job, using the ‘bg’ command to continue it in the background,
|
||||
the ‘fg’ command to continue it in the foreground, or the ‘kill’ command
|
||||
to kill it. A ‘^Z’ takes effect immediately, and has the additional
|
||||
side effect of causing pending output and typeahead to be discarded.
|
||||
character (typically ‘^Z’, Control-Z) while a process is running stops
|
||||
that process and returns control to Bash. Typing the “delayed suspend”
|
||||
character (typically ‘^Y’, Control-Y) causes the process to stop when it
|
||||
attempts to read input from the terminal, and returns control to Bash.
|
||||
The user then manipulates the state of this job, using the ‘bg’ command
|
||||
to continue it in the background, the ‘fg’ command to continue it in the
|
||||
foreground, or the ‘kill’ command to kill it. The suspend character
|
||||
takes effect immediately, and has the additional side effect of
|
||||
discarding any pending output and typeahead. If you want to force a
|
||||
background process to stop, or stop a process that's not associated with
|
||||
your terminal session, send it the ‘SIGSTOP’ signal using ‘kill’.
|
||||
|
||||
There are a number of ways to refer to a job in the shell. The
|
||||
character ‘%’ introduces a job specification (“jobspec”).
|
||||
There are a number of ways to refer to a job in the shell. The ‘%’
|
||||
character introduces a “job specification” (jobspec).
|
||||
|
||||
Job number ‘n’ may be referred to as ‘%n’. The symbols ‘%%’ and ‘%+’
|
||||
refer to the shell's notion of the current job, which is the last job
|
||||
stopped while it was in the foreground or started in the background. A
|
||||
single ‘%’ (with no accompanying job specification) also refers to the
|
||||
current job. The previous job may be referenced using ‘%-’. If there
|
||||
is only a single job, ‘%+’ and ‘%-’ can both be used to refer to that
|
||||
job. In output pertaining to jobs (e.g., the output of the ‘jobs’
|
||||
command), the current job is always flagged with a ‘+’, and the previous
|
||||
job with a ‘-’.
|
||||
Job number ‘n’ may be referred to as ‘%n’. A job may also be
|
||||
referred to using a prefix of the name used to start it, or using a
|
||||
substring that appears in its command line. For example, ‘%ce’ refers
|
||||
to a job whose command name begins with ‘ce’. Using ‘%?ce’, on the
|
||||
other hand, refers to any job containing the string ‘ce’ in its command
|
||||
line. If the prefix or substring matches more than one job, Bash
|
||||
reports an error.
|
||||
|
||||
A job may also be referred to using a prefix of the name used to
|
||||
start it, or using a substring that appears in its command line. For
|
||||
example, ‘%ce’ refers to a stopped job whose command name begins with
|
||||
‘ce’. Using ‘%?ce’, on the other hand, refers to any job containing the
|
||||
string ‘ce’ in its command line. If the prefix or substring matches
|
||||
more than one job, Bash reports an error.
|
||||
The symbols ‘%%’ and ‘%+’ refer to the shell's notion of the “current
|
||||
job”. A single ‘%’ (with no accompanying job specification) also refers
|
||||
to the current job. ‘%-’ refers to the “previous job”. When a job
|
||||
starts in the background, a job stops while in the foreground, or a job
|
||||
is resumed in the background, it becomes the current job. The job that
|
||||
was the current job becomes the previous job. When the current job
|
||||
terminates, the previous job becomes the current job. If there is only
|
||||
a single job, ‘%+’ and ‘%-’ can both be used to refer to that job. In
|
||||
output pertaining to jobs (e.g., the output of the ‘jobs’ command), the
|
||||
current job is always marked with a ‘+’, and the previous job with a
|
||||
‘-’.
|
||||
|
||||
Simply naming a job can be used to bring it into the foreground: ‘%1’
|
||||
is a synonym for ‘fg %1’, bringing job 1 from the background into the
|
||||
foreground. Similarly, ‘%1 &’ resumes job 1 in the background,
|
||||
equivalent to ‘bg %1’
|
||||
equivalent to ‘bg %1’.
|
||||
|
||||
The shell learns immediately whenever a job changes state. Normally,
|
||||
Bash waits until it is about to print a prompt before reporting changes
|
||||
in a job's status so as to not interrupt any other output, though it
|
||||
will notify of changes in a job's status after a foreground command in a
|
||||
list completes, before executing the next command. If the ‘-b’ option
|
||||
to the ‘set’ builtin is enabled, Bash reports such changes immediately
|
||||
(*note The Set Builtin::). Any trap on ‘SIGCHLD’ is executed for each
|
||||
child process that exits.
|
||||
Bash waits until it is about to print a prompt before notifying the user
|
||||
about changes in a job's status so as to not interrupt any other output,
|
||||
though it will notify of changes in a job's status after a foreground
|
||||
command in a list completes, before executing the next command in the
|
||||
list. If the ‘-b’ option to the ‘set’ builtin is enabled, Bash reports
|
||||
such changes immediately (*note The Set Builtin::). Bash executes any
|
||||
trap on ‘SIGCHLD’ for each child process that terminates.
|
||||
|
||||
If an attempt to exit Bash is made while jobs are stopped, (or
|
||||
running, if the ‘checkjobs’ option is enabled - see *note The Shopt
|
||||
Builtin::), the shell prints a warning message, and if the ‘checkjobs’
|
||||
option is enabled, lists the jobs and their statuses. The ‘jobs’
|
||||
command may then be used to inspect their status. If a second attempt
|
||||
to exit is made without an intervening command, Bash does not print
|
||||
another warning, and any stopped jobs are terminated.
|
||||
When a job terminates and Bash notifies the user about it, Bash
|
||||
removes the job from the jobs table. It will not appear in ‘jobs’
|
||||
output, but ‘wait’ will report its exit status, as long as it's supplied
|
||||
the process ID associated with the job as an argument. When the table
|
||||
is empty, job numbers start over at 1.
|
||||
|
||||
If a user attempts to exit Bash while jobs are stopped, (or running,
|
||||
if the ‘checkjobs’ option is enabled - see *note The Shopt Builtin::),
|
||||
the shell prints a warning message, and if the ‘checkjobs’ option is
|
||||
enabled, lists the jobs and their statuses. The ‘jobs’ command may then
|
||||
be used to inspect their status. If the user immediately attempts to
|
||||
exit again, without an intervening command, Bash does not print another
|
||||
warning, and terminates any stopped jobs.
|
||||
|
||||
When the shell is waiting for a job or process using the ‘wait’
|
||||
builtin, and job control is enabled, ‘wait’ will return when the job
|
||||
@@ -8157,21 +8174,22 @@ File: bashref.info, Node: Job Control Builtins, Next: Job Control Variables,
|
||||
bg [JOBSPEC ...]
|
||||
|
||||
Resume each suspended job JOBSPEC in the background, as if it had
|
||||
been started with ‘&’. If JOBSPEC is not supplied, the current job
|
||||
is used. The return status is zero unless it is run when job
|
||||
control is not enabled, or, when run with job control enabled, any
|
||||
JOBSPEC was not found or specifies a job that was started without
|
||||
job control.
|
||||
been started with ‘&’. If JOBSPEC is not supplied, the shell uses
|
||||
its notion of the current job. ‘bg’ returns zero unless it is run
|
||||
when job control is not enabled, or, when run with job control
|
||||
enabled, any JOBSPEC was not found or specifies a job that was
|
||||
started without job control.
|
||||
|
||||
‘fg’
|
||||
fg [JOBSPEC]
|
||||
|
||||
Resume the job JOBSPEC in the foreground and make it the current
|
||||
job. If JOBSPEC is not supplied, resume the current job. The
|
||||
return status is that of the command placed into the foreground, or
|
||||
non-zero if run when job control is disabled or, when run with job
|
||||
control enabled, JOBSPEC does not specify a valid job or JOBSPEC
|
||||
specifies a job that was started without job control.
|
||||
job. If JOBSPEC is not supplied, ‘fg’ resumes the current job.
|
||||
The return status is that of the command placed into the
|
||||
foreground, or non-zero if run when job control is disabled or,
|
||||
when run with job control enabled, JOBSPEC does not specify a valid
|
||||
job or JOBSPEC specifies a job that was started without job
|
||||
control.
|
||||
|
||||
‘jobs’
|
||||
jobs [-lnprs] [JOBSPEC]
|
||||
@@ -8198,7 +8216,8 @@ File: bashref.info, Node: Job Control Builtins, Next: Job Control Variables,
|
||||
|
||||
If JOBSPEC is supplied, ‘jobs’ restricts output to information
|
||||
about that job. If JOBSPEC is not supplied, ‘jobs’ lists the
|
||||
status of all jobs.
|
||||
status of all jobs. The return status is zero unless an invalid
|
||||
option is encountered or an invalid JOBSPEC is supplied.
|
||||
|
||||
If the ‘-x’ option is supplied, ‘jobs’ replaces any JOBSPEC found
|
||||
in COMMAND or ARGUMENTS with the corresponding process group ID,
|
||||
@@ -8206,21 +8225,25 @@ File: bashref.info, Node: Job Control Builtins, Next: Job Control Variables,
|
||||
status.
|
||||
|
||||
‘kill’
|
||||
kill [-s SIGSPEC] [-n SIGNUM] [-SIGSPEC] JOBSPEC or PID
|
||||
kill [-s SIGSPEC] [-n SIGNUM] [-SIGSPEC] ID [...]
|
||||
kill -l|-L [EXIT_STATUS]
|
||||
|
||||
Send a signal specified by SIGSPEC or SIGNUM to the process named
|
||||
by job specification JOBSPEC or process ID PID. SIGSPEC is either
|
||||
a case-insensitive signal name such as ‘SIGINT’ (with or without
|
||||
the ‘SIG’ prefix) or a signal number; SIGNUM is a signal number.
|
||||
If SIGSPEC and SIGNUM are not present, ‘kill’ sends ‘SIGTERM’.
|
||||
Send a signal specified by SIGSPEC or SIGNUM to the processes named
|
||||
by each ID. Each ID may be a job specification JOBSPEC or process
|
||||
ID PID. SIGSPEC is either a case-insensitive signal name such as
|
||||
‘SIGINT’ (with or without the ‘SIG’ prefix) or a signal number;
|
||||
SIGNUM is a signal number. If SIGSPEC and SIGNUM are not present,
|
||||
‘kill’ sends ‘SIGTERM’.
|
||||
|
||||
The ‘-l’ option lists the signal names. If any arguments are
|
||||
supplied when ‘-l’ is supplied, the names of the signals
|
||||
corresponding to the arguments are listed, and the return status is
|
||||
supplied when ‘-l’ is supplied, ‘kill’ lists the names of the
|
||||
signals corresponding to the arguments, and the return status is
|
||||
zero. EXIT_STATUS is a number specifying a signal number or the
|
||||
exit status of a process terminated by a signal. The ‘-L’ option
|
||||
is equivalent to ‘-l’.
|
||||
exit status of a process terminated by a signal; if it is supplied,
|
||||
‘kill’ prints the name of the signal that caused the process to
|
||||
terminate. ‘kill’ assumes that process exit statuses are greater
|
||||
than 128; anything less than that is a signal number. The ‘-L’
|
||||
option is equivalent to ‘-l’.
|
||||
|
||||
The return status is zero if at least one signal was successfully
|
||||
sent, or non-zero if an error occurs or an invalid option is
|
||||
@@ -8230,9 +8253,9 @@ File: bashref.info, Node: Job Control Builtins, Next: Job Control Variables,
|
||||
wait [-fn] [-p VARNAME] [ID ...]
|
||||
|
||||
Wait until the child process specified by each ID exits and return
|
||||
the exit status of the last ID. Each ID may be a PID or job
|
||||
specification JOBSPEC; if a job spec is supplied, ‘wait’ waits for
|
||||
all processes in the job.
|
||||
the exit status of the last ID. Each ID may be a process ID PID or
|
||||
a job specification JOBSPEC; if a jobspec is supplied, ‘wait’ waits
|
||||
for all processes in the job.
|
||||
|
||||
If no options or IDs are supplied, ‘wait’ waits for all running
|
||||
background jobs and the last-executed process substitution, if its
|
||||
@@ -8244,11 +8267,11 @@ File: bashref.info, Node: Job Control Builtins, Next: Job Control Variables,
|
||||
is a child of the shell, or if no arguments are supplied and the
|
||||
shell has no unwaited-for children, the exit status is 127.
|
||||
|
||||
If the ‘-p’ option is supplied, the process or job identifier of
|
||||
the job for which the exit status is returned is assigned to the
|
||||
If the ‘-p’ option is supplied, ‘wait’ assigns the process or job
|
||||
identifier of the job for which the exit status is returned to the
|
||||
variable VARNAME named by the option argument. The variable, which
|
||||
cannot be readonly, will be unset initially, before any assignment.
|
||||
This is useful only when the ‘-n’ option is supplied.
|
||||
This is useful only when used with the ‘-n’ option.
|
||||
|
||||
Supplying the ‘-f’ option, when job control is enabled, forces
|
||||
‘wait’ to wait for each ID to terminate before returning its
|
||||
@@ -8264,16 +8287,18 @@ File: bashref.info, Node: Job Control Builtins, Next: Job Control Variables,
|
||||
disown [-ar] [-h] [ID ...]
|
||||
|
||||
Without options, remove each ID from the table of active jobs.
|
||||
Each ID may be a PID or job specification JOBSPEC; if ID is a PID,
|
||||
‘disown’ uses the job containing PID. If the ‘-h’ option is
|
||||
supplied, the job is not removed from the table, but is marked so
|
||||
that ‘SIGHUP’ is not sent to the job if the shell receives a
|
||||
‘SIGHUP’. If ID is not present, and neither the ‘-a’ nor the ‘-r’
|
||||
option is supplied, ‘disown’ removes the current job.
|
||||
Each ID may be a job specification JOBSPEC or a process ID PID; if
|
||||
ID is a PID, ‘disown’ uses the job containing PID as JOBSPEC.
|
||||
|
||||
If the ‘-h’ option is supplied, ‘disown’ does not remove the jobs
|
||||
corresponding to each ‘id’ from the jobs table, but rather marks
|
||||
them so the shell does not send ‘SIGHUP’ to the job if the shell
|
||||
receives a ‘SIGHUP’.
|
||||
|
||||
If no ID is supplied, the ‘-a’ option means to remove or mark all
|
||||
jobs; the ‘-r’ option without an ID argument restricts operation to
|
||||
running jobs.
|
||||
jobs; the ‘-r’ option without an ID argument removes or marks
|
||||
running jobs. If no ID is supplied, and neither the ‘-a’ nor the
|
||||
‘-r’ option is supplied, ‘disown’ removes or marks the current job.
|
||||
|
||||
The return value is 0 unless an ID does not specify a valid job.
|
||||
|
||||
@@ -8297,19 +8322,20 @@ File: bashref.info, Node: Job Control Variables, Prev: Job Control Builtins,
|
||||
|
||||
‘auto_resume’
|
||||
This variable controls how the shell interacts with the user and
|
||||
job control. If this variable exists then single-word simple
|
||||
commands without redirections are treated as candidates for
|
||||
resumption of an existing job. There is no ambiguity allowed; if
|
||||
there is more than one job beginning with the string typed, then
|
||||
the most recently accessed job is selected. The name of a stopped
|
||||
job, in this context, is the command line used to start it. If
|
||||
this variable is set to the value ‘exact’, the string supplied must
|
||||
match the name of a stopped job exactly; if set to ‘substring’, the
|
||||
string supplied needs to match a substring of the name of a stopped
|
||||
job. The ‘substring’ value provides functionality analogous to the
|
||||
‘%?’ job ID (*note Job Control Basics::). If set to any other
|
||||
value, the supplied string must be a prefix of a stopped job's
|
||||
name; this provides functionality analogous to the ‘%’ job ID.
|
||||
job control. If this variable exists then simple commands
|
||||
consisting of only a single word, without redirections, are treated
|
||||
as candidates for resumption of an existing job. There is no
|
||||
ambiguity allowed; if there is more than one job beginning with or
|
||||
containing the word, then this selects the most recently accessed
|
||||
job. The name of a stopped job, in this context, is the command
|
||||
line used to start it, as displayed by ‘jobs’. If this variable is
|
||||
set to the value ‘exact’, the word must match the name of a stopped
|
||||
job exactly; if set to ‘substring’, the word needs to match a
|
||||
substring of the name of a stopped job. The ‘substring’ value
|
||||
provides functionality analogous to the ‘%?string’ job ID (*note
|
||||
Job Control Basics::). If set to any other value (e.g., ‘prefix’),
|
||||
the word must be a prefix of a stopped job's name; this provides
|
||||
functionality analogous to the ‘%string’ job ID.
|
||||
|
||||
|
||||
File: bashref.info, Node: Command Line Editing, Next: Using History Interactively, Prev: Job Control, Up: Top
|
||||
@@ -9091,7 +9117,7 @@ Key Bindings
|
||||
|
||||
This key binding syntax recognizes a number of symbolic
|
||||
character names: DEL, ESC, ESCAPE, LFD, NEWLINE, RET, RETURN,
|
||||
RUBOUT, SPACE, SPC, and TAB.
|
||||
RUBOUT (a destructive backspace), SPACE, SPC, and TAB.
|
||||
|
||||
"KEYSEQ": FUNCTION-NAME or MACRO
|
||||
KEYSEQ differs from KEYNAME above in that strings denoting an
|
||||
@@ -9583,7 +9609,8 @@ File: bashref.info, Node: Commands For Text, Next: Commands For Killing, Prev
|
||||
‘delete-char (C-d)’
|
||||
Delete the character at point. If this function is bound to the
|
||||
same character as the tty EOF character, as ‘C-d’ commonly is, see
|
||||
above for the effects.
|
||||
above for the effects. This may also be bound to the Delete key on
|
||||
some keyboards.
|
||||
|
||||
‘backward-delete-char (Rubout)’
|
||||
Delete the character behind the cursor. A numeric argument means
|
||||
@@ -12643,7 +12670,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* dirs: Directory Stack Builtins.
|
||||
(line 7)
|
||||
* disown: Job Control Builtins.
|
||||
(line 114)
|
||||
(line 120)
|
||||
* echo: Bash Builtins. (line 284)
|
||||
* enable: Bash Builtins. (line 337)
|
||||
* eval: Bourne Shell Builtins.
|
||||
@@ -12668,9 +12695,9 @@ D.1 Index of Shell Builtin Commands
|
||||
* history: Bash History Builtins.
|
||||
(line 59)
|
||||
* jobs: Job Control Builtins.
|
||||
(line 27)
|
||||
(line 28)
|
||||
* kill: Job Control Builtins.
|
||||
(line 59)
|
||||
(line 61)
|
||||
* let: Bash Builtins. (line 394)
|
||||
* local: Bash Builtins. (line 403)
|
||||
* logout: Bash Builtins. (line 428)
|
||||
@@ -12694,7 +12721,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* shopt: The Shopt Builtin. (line 9)
|
||||
* source: Bash Builtins. (line 668)
|
||||
* suspend: Job Control Builtins.
|
||||
(line 131)
|
||||
(line 139)
|
||||
* test: Bourne Shell Builtins.
|
||||
(line 333)
|
||||
* times: Bourne Shell Builtins.
|
||||
@@ -12712,7 +12739,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* unset: Bourne Shell Builtins.
|
||||
(line 528)
|
||||
* wait: Job Control Builtins.
|
||||
(line 80)
|
||||
(line 86)
|
||||
|
||||
|
||||
File: bashref.info, Node: Reserved Word Index, Next: Variable Index, Prev: Builtin Index, Up: Indexes
|
||||
@@ -13022,7 +13049,7 @@ D.4 Function Index
|
||||
* alias-expand-line (): Miscellaneous Commands.
|
||||
(line 133)
|
||||
* backward-char (C-b): Commands For Moving. (line 17)
|
||||
* backward-delete-char (Rubout): Commands For Text. (line 17)
|
||||
* backward-delete-char (Rubout): Commands For Text. (line 18)
|
||||
* backward-kill-line (C-x Rubout): Commands For Killing.
|
||||
(line 11)
|
||||
* backward-kill-word (M-<DEL>): Commands For Killing.
|
||||
@@ -13031,9 +13058,9 @@ D.4 Function Index
|
||||
* beginning-of-history (M-<): Commands For History.
|
||||
(line 20)
|
||||
* beginning-of-line (C-a): Commands For Moving. (line 6)
|
||||
* bracketed-paste-begin (): Commands For Text. (line 34)
|
||||
* bracketed-paste-begin (): Commands For Text. (line 35)
|
||||
* call-last-kbd-macro (C-x e): Keyboard Macros. (line 13)
|
||||
* capitalize-word (M-c): Commands For Text. (line 72)
|
||||
* capitalize-word (M-c): Commands For Text. (line 73)
|
||||
* character-search (C-]): Miscellaneous Commands.
|
||||
(line 41)
|
||||
* character-search-backward (M-C-]): Miscellaneous Commands.
|
||||
@@ -13072,7 +13099,7 @@ D.4 Function Index
|
||||
(line 147)
|
||||
* do-lowercase-version (M-A, M-B, M-X, ...): Miscellaneous Commands.
|
||||
(line 14)
|
||||
* downcase-word (M-l): Commands For Text. (line 68)
|
||||
* downcase-word (M-l): Commands For Text. (line 69)
|
||||
* dump-functions (): Miscellaneous Commands.
|
||||
(line 71)
|
||||
* dump-macros (): Miscellaneous Commands.
|
||||
@@ -13094,7 +13121,7 @@ D.4 Function Index
|
||||
(line 90)
|
||||
* fetch-history (): Commands For History.
|
||||
(line 106)
|
||||
* forward-backward-delete-char (): Commands For Text. (line 22)
|
||||
* forward-backward-delete-char (): Commands For Text. (line 23)
|
||||
* forward-char (C-f): Commands For Moving. (line 14)
|
||||
* forward-search-history (C-s): Commands For History.
|
||||
(line 33)
|
||||
@@ -13146,7 +13173,7 @@ D.4 Function Index
|
||||
(line 39)
|
||||
* operate-and-get-next (C-o): Commands For History.
|
||||
(line 99)
|
||||
* overwrite-mode (): Commands For Text. (line 76)
|
||||
* overwrite-mode (): Commands For Text. (line 77)
|
||||
* possible-command-completions (C-x !): Commands For Completion.
|
||||
(line 87)
|
||||
* possible-completions (M-?): Commands For Completion.
|
||||
@@ -13165,7 +13192,7 @@ D.4 Function Index
|
||||
(line 13)
|
||||
* previous-screen-line (): Commands For Moving. (line 36)
|
||||
* print-last-kbd-macro (): Keyboard Macros. (line 17)
|
||||
* quoted-insert (C-q or C-v): Commands For Text. (line 27)
|
||||
* quoted-insert (C-q or C-v): Commands For Text. (line 28)
|
||||
* re-read-init-file (C-x C-r): Miscellaneous Commands.
|
||||
(line 6)
|
||||
* redraw-current-line (): Commands For Moving. (line 59)
|
||||
@@ -13173,7 +13200,7 @@ D.4 Function Index
|
||||
(line 27)
|
||||
* revert-line (M-r): Miscellaneous Commands.
|
||||
(line 26)
|
||||
* self-insert (a, b, A, 1, !, ...): Commands For Text. (line 31)
|
||||
* self-insert (a, b, A, 1, !, ...): Commands For Text. (line 32)
|
||||
* set-mark (C-@): Miscellaneous Commands.
|
||||
(line 33)
|
||||
* shell-backward-kill-word (): Commands For Killing.
|
||||
@@ -13184,7 +13211,7 @@ D.4 Function Index
|
||||
* shell-forward-word (M-C-f): Commands For Moving. (line 28)
|
||||
* shell-kill-word (M-C-d): Commands For Killing.
|
||||
(line 32)
|
||||
* shell-transpose-words (M-C-t): Commands For Text. (line 57)
|
||||
* shell-transpose-words (M-C-t): Commands For Text. (line 58)
|
||||
* skip-csi-sequence (): Miscellaneous Commands.
|
||||
(line 50)
|
||||
* spell-correct-word (C-x s): Miscellaneous Commands.
|
||||
@@ -13192,8 +13219,8 @@ D.4 Function Index
|
||||
* start-kbd-macro (C-x (): Keyboard Macros. (line 6)
|
||||
* tilde-expand (M-&): Miscellaneous Commands.
|
||||
(line 30)
|
||||
* transpose-chars (C-t): Commands For Text. (line 46)
|
||||
* transpose-words (M-t): Commands For Text. (line 52)
|
||||
* transpose-chars (C-t): Commands For Text. (line 47)
|
||||
* transpose-words (M-t): Commands For Text. (line 53)
|
||||
* undo (C-_ or C-x C-u): Miscellaneous Commands.
|
||||
(line 23)
|
||||
* universal-argument (): Numeric Arguments. (line 10)
|
||||
@@ -13203,7 +13230,7 @@ D.4 Function Index
|
||||
(line 16)
|
||||
* unix-word-rubout (C-w): Commands For Killing.
|
||||
(line 41)
|
||||
* upcase-word (M-u): Commands For Text. (line 64)
|
||||
* upcase-word (M-u): Commands For Text. (line 65)
|
||||
* yank (C-y): Commands For Killing.
|
||||
(line 72)
|
||||
* yank-last-arg (M-. or M-_): Commands For History.
|
||||
@@ -13356,7 +13383,7 @@ D.5 Concept Index
|
||||
* quoting: Quoting. (line 6)
|
||||
* quoting, ANSI: ANSI-C Quoting. (line 6)
|
||||
* Readline, how to use: Job Control Variables.
|
||||
(line 22)
|
||||
(line 23)
|
||||
* redirection: Redirections. (line 6)
|
||||
* reserved word: Definitions. (line 70)
|
||||
* reserved words: Reserved Words. (line 6)
|
||||
@@ -13425,104 +13452,104 @@ Node: Special Parameters70393
|
||||
Node: Shell Expansions73857
|
||||
Node: Brace Expansion76049
|
||||
Node: Tilde Expansion78780
|
||||
Node: Shell Parameter Expansion81725
|
||||
Node: Command Substitution101500
|
||||
Node: Arithmetic Expansion105036
|
||||
Node: Process Substitution106052
|
||||
Node: Word Splitting107171
|
||||
Node: Filename Expansion109271
|
||||
Node: Pattern Matching112542
|
||||
Node: Quote Removal117879
|
||||
Node: Redirections118186
|
||||
Node: Executing Commands128404
|
||||
Node: Simple Command Expansion129074
|
||||
Node: Command Search and Execution131185
|
||||
Node: Command Execution Environment133632
|
||||
Node: Environment137083
|
||||
Node: Exit Status138989
|
||||
Node: Signals141050
|
||||
Node: Shell Scripts144951
|
||||
Node: Shell Builtin Commands148252
|
||||
Node: Bourne Shell Builtins150366
|
||||
Node: Bash Builtins176670
|
||||
Node: Modifying Shell Behavior213121
|
||||
Node: The Set Builtin213466
|
||||
Node: The Shopt Builtin225405
|
||||
Node: Special Builtins242460
|
||||
Node: Shell Variables243452
|
||||
Node: Bourne Shell Variables243889
|
||||
Node: Bash Variables246400
|
||||
Node: Bash Features284660
|
||||
Node: Invoking Bash285677
|
||||
Node: Bash Startup Files292106
|
||||
Node: Interactive Shells297422
|
||||
Node: What is an Interactive Shell?297833
|
||||
Node: Is this Shell Interactive?298498
|
||||
Node: Interactive Shell Behavior299325
|
||||
Node: Bash Conditional Expressions303089
|
||||
Node: Shell Arithmetic308309
|
||||
Node: Aliases311651
|
||||
Node: Arrays314616
|
||||
Node: The Directory Stack321682
|
||||
Node: Directory Stack Builtins322482
|
||||
Node: Controlling the Prompt326930
|
||||
Node: The Restricted Shell329817
|
||||
Node: Bash POSIX Mode332702
|
||||
Node: Shell Compatibility Mode350846
|
||||
Node: Job Control359860
|
||||
Node: Job Control Basics360320
|
||||
Node: Job Control Builtins365631
|
||||
Node: Job Control Variables371802
|
||||
Node: Command Line Editing372973
|
||||
Node: Introduction and Notation374679
|
||||
Node: Readline Interaction377032
|
||||
Node: Readline Bare Essentials378223
|
||||
Node: Readline Movement Commands380034
|
||||
Node: Readline Killing Commands381033
|
||||
Node: Readline Arguments383059
|
||||
Node: Searching384119
|
||||
Node: Readline Init File386383
|
||||
Node: Readline Init File Syntax387690
|
||||
Node: Conditional Init Constructs414413
|
||||
Node: Sample Init File418801
|
||||
Node: Bindable Readline Commands421925
|
||||
Node: Commands For Moving423400
|
||||
Node: Commands For History425630
|
||||
Node: Commands For Text430886
|
||||
Node: Commands For Killing434948
|
||||
Node: Numeric Arguments437739
|
||||
Node: Commands For Completion438894
|
||||
Node: Keyboard Macros443397
|
||||
Node: Miscellaneous Commands444101
|
||||
Node: Readline vi Mode450657
|
||||
Node: Programmable Completion451637
|
||||
Node: Programmable Completion Builtins459692
|
||||
Node: A Programmable Completion Example471360
|
||||
Node: Using History Interactively476708
|
||||
Node: Bash History Facilities477392
|
||||
Node: Bash History Builtins481130
|
||||
Node: History Interaction487604
|
||||
Node: Event Designators492561
|
||||
Node: Word Designators494142
|
||||
Node: Modifiers496453
|
||||
Node: Installing Bash498397
|
||||
Node: Basic Installation499516
|
||||
Node: Compilers and Options503395
|
||||
Node: Compiling For Multiple Architectures504148
|
||||
Node: Installation Names505900
|
||||
Node: Specifying the System Type508137
|
||||
Node: Sharing Defaults508886
|
||||
Node: Operation Controls509603
|
||||
Node: Optional Features510625
|
||||
Node: Reporting Bugs523008
|
||||
Node: Major Differences From The Bourne Shell524369
|
||||
Node: GNU Free Documentation License545792
|
||||
Node: Indexes570972
|
||||
Node: Builtin Index571426
|
||||
Node: Reserved Word Index578527
|
||||
Node: Variable Index580975
|
||||
Node: Function Index598391
|
||||
Node: Concept Index612250
|
||||
Node: Shell Parameter Expansion81738
|
||||
Node: Command Substitution101509
|
||||
Node: Arithmetic Expansion105045
|
||||
Node: Process Substitution106061
|
||||
Node: Word Splitting107180
|
||||
Node: Filename Expansion109280
|
||||
Node: Pattern Matching112551
|
||||
Node: Quote Removal117888
|
||||
Node: Redirections118195
|
||||
Node: Executing Commands128413
|
||||
Node: Simple Command Expansion129083
|
||||
Node: Command Search and Execution131194
|
||||
Node: Command Execution Environment133641
|
||||
Node: Environment137092
|
||||
Node: Exit Status138998
|
||||
Node: Signals141059
|
||||
Node: Shell Scripts144960
|
||||
Node: Shell Builtin Commands148261
|
||||
Node: Bourne Shell Builtins150375
|
||||
Node: Bash Builtins176679
|
||||
Node: Modifying Shell Behavior213130
|
||||
Node: The Set Builtin213475
|
||||
Node: The Shopt Builtin225414
|
||||
Node: Special Builtins242469
|
||||
Node: Shell Variables243461
|
||||
Node: Bourne Shell Variables243898
|
||||
Node: Bash Variables246409
|
||||
Node: Bash Features284669
|
||||
Node: Invoking Bash285686
|
||||
Node: Bash Startup Files292115
|
||||
Node: Interactive Shells297431
|
||||
Node: What is an Interactive Shell?297842
|
||||
Node: Is this Shell Interactive?298507
|
||||
Node: Interactive Shell Behavior299334
|
||||
Node: Bash Conditional Expressions303098
|
||||
Node: Shell Arithmetic308318
|
||||
Node: Aliases311660
|
||||
Node: Arrays314798
|
||||
Node: The Directory Stack321864
|
||||
Node: Directory Stack Builtins322664
|
||||
Node: Controlling the Prompt327112
|
||||
Node: The Restricted Shell329999
|
||||
Node: Bash POSIX Mode332884
|
||||
Node: Shell Compatibility Mode351028
|
||||
Node: Job Control360042
|
||||
Node: Job Control Basics360502
|
||||
Node: Job Control Builtins366781
|
||||
Node: Job Control Variables373466
|
||||
Node: Command Line Editing374700
|
||||
Node: Introduction and Notation376406
|
||||
Node: Readline Interaction378759
|
||||
Node: Readline Bare Essentials379950
|
||||
Node: Readline Movement Commands381761
|
||||
Node: Readline Killing Commands382760
|
||||
Node: Readline Arguments384786
|
||||
Node: Searching385846
|
||||
Node: Readline Init File388110
|
||||
Node: Readline Init File Syntax389417
|
||||
Node: Conditional Init Constructs416166
|
||||
Node: Sample Init File420554
|
||||
Node: Bindable Readline Commands423678
|
||||
Node: Commands For Moving425153
|
||||
Node: Commands For History427383
|
||||
Node: Commands For Text432639
|
||||
Node: Commands For Killing436767
|
||||
Node: Numeric Arguments439558
|
||||
Node: Commands For Completion440713
|
||||
Node: Keyboard Macros445216
|
||||
Node: Miscellaneous Commands445920
|
||||
Node: Readline vi Mode452476
|
||||
Node: Programmable Completion453456
|
||||
Node: Programmable Completion Builtins461511
|
||||
Node: A Programmable Completion Example473179
|
||||
Node: Using History Interactively478527
|
||||
Node: Bash History Facilities479211
|
||||
Node: Bash History Builtins482949
|
||||
Node: History Interaction489423
|
||||
Node: Event Designators494380
|
||||
Node: Word Designators495961
|
||||
Node: Modifiers498272
|
||||
Node: Installing Bash500216
|
||||
Node: Basic Installation501335
|
||||
Node: Compilers and Options505214
|
||||
Node: Compiling For Multiple Architectures505967
|
||||
Node: Installation Names507719
|
||||
Node: Specifying the System Type509956
|
||||
Node: Sharing Defaults510705
|
||||
Node: Operation Controls511422
|
||||
Node: Optional Features512444
|
||||
Node: Reporting Bugs524827
|
||||
Node: Major Differences From The Bourne Shell526188
|
||||
Node: GNU Free Documentation License547611
|
||||
Node: Indexes572791
|
||||
Node: Builtin Index573245
|
||||
Node: Reserved Word Index580346
|
||||
Node: Variable Index582794
|
||||
Node: Function Index600210
|
||||
Node: Concept Index614069
|
||||
|
||||
End Tag Table
|
||||
|
||||
|
||||
+67
-43
@@ -1,12 +1,11 @@
|
||||
This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/MacPorts 2024.70613_0) (preloaded format=etex 2024.4.9) 11 OCT 2024 09:00
|
||||
This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/MacPorts 2024.70613_0) (preloaded format=pdfetex 2024.4.9) 14 OCT 2024 17:00
|
||||
entering extended mode
|
||||
restricted \write18 enabled.
|
||||
file:line:error style messages enabled.
|
||||
%&-line parsing enabled.
|
||||
**\nonstopmode \input /usr/local/src/bash/bash-20241007/doc/bashref.texi \input
|
||||
/usr/local/src/bash/bash-20241007/doc/bashref.texi
|
||||
(/usr/local/src/bash/bash-20241007/doc/bashref.texi
|
||||
(/usr/local/src/bash/bash-20241007/doc/texinfo.tex
|
||||
**\input /usr/local/src/bash/bash-20241012/doc/bashref.texi
|
||||
(/usr/local/src/bash/bash-20241012/doc/bashref.texi
|
||||
(/usr/local/src/bash/bash-20241012/doc/texinfo.tex
|
||||
Loading texinfo [version 2015-11-22.14]:
|
||||
\outerhsize=\dimen16
|
||||
\outervsize=\dimen17
|
||||
@@ -162,20 +161,23 @@ This is `epsf.tex' v2.7.4 <14 February 2011>
|
||||
texinfo.tex: doing @include of version.texi
|
||||
|
||||
|
||||
(/usr/local/src/bash/bash-20241007/doc/version.texi) [1] [2]
|
||||
(/usr/local/build/bash/bash-20241007/doc/bashref.toc [-1] [-2] [-3]) [-4]
|
||||
Chapter 1
|
||||
(/usr/local/src/bash/bash-20241012/doc/version.texi) [1{/opt/local/var/db/texmf
|
||||
/fonts/map/pdftex/updmap/pdftex.map}] [2]
|
||||
(/usr/local/build/bash/bash-20241012/doc/bashref.toc [-1] [-2] [-3]) [-4]
|
||||
(/usr/local/build/bash/bash-20241012/doc/bashref.toc)
|
||||
(/usr/local/build/bash/bash-20241012/doc/bashref.toc) Chapter 1
|
||||
\openout0 = `bashref.toc'.
|
||||
|
||||
(/usr/local/build/bash/bash-20241007/doc/bashref.aux)
|
||||
|
||||
(/usr/local/build/bash/bash-20241012/doc/bashref.aux)
|
||||
\openout1 = `bashref.aux'.
|
||||
|
||||
[1] Chapter 2
|
||||
[2]
|
||||
[1] Chapter 2 [2]
|
||||
@cpindfile=@write2
|
||||
\openout2 = `bashref.cp'.
|
||||
|
||||
[3] Chapter 3 [4] [5] [6] [7]
|
||||
|
||||
[3] Chapter 3 [4] [5] [6] [7]
|
||||
@vrindfile=@write3
|
||||
\openout3 = `bashref.vr'.
|
||||
|
||||
@@ -219,16 +221,17 @@ Overfull \hbox (5.95723pt too wide) in paragraph at lines 737--738
|
||||
@rwindfile=@write4
|
||||
\openout4 = `bashref.rw'.
|
||||
|
||||
[10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23]
|
||||
[24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38]
|
||||
[39] [40] [41] [42] [43] [44] [45] [46] [47] [48] Chapter 4 [49]
|
||||
[10] [11] [12] [13] [14] [15] [16] [17] [18] [19{/opt/local/share/texmf-texliv
|
||||
e/fonts/enc/dvips/cm-super/cm-super-t1.enc}] [20] [21] [22] [23] [24]
|
||||
[25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39]
|
||||
[40] [41] [42] [43] [44] [45] [46] [47] [48] Chapter 4 [49]
|
||||
@btindfile=@write5
|
||||
\openout5 = `bashref.bt'.
|
||||
|
||||
[50] [51]
|
||||
[52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66]
|
||||
[67] [68] [69] [70]
|
||||
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5702--5702
|
||||
[50] [51] [52]
|
||||
[53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67]
|
||||
[68] [69] [70]
|
||||
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5703--5703
|
||||
[]@texttt set [-abefhkmnptuvxBCEHPT] [-o @textttsl option-name@texttt ] [--] [
|
||||
-] [@textttsl ar-gu-ment []@texttt ][]
|
||||
|
||||
@@ -241,7 +244,7 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5702--5702
|
||||
.etc.
|
||||
|
||||
|
||||
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5703--5703
|
||||
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5704--5704
|
||||
[]@texttt set [+abefhkmnptuvxBCEHPT] [+o @textttsl option-name@texttt ] [--] [
|
||||
-] [@textttsl ar-gu-ment []@texttt ][]
|
||||
|
||||
@@ -257,12 +260,12 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5703--5703
|
||||
[84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] Chapter 6
|
||||
[97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109]
|
||||
[110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120] [121]
|
||||
Chapter 7 [122] [123] [124] [125]
|
||||
Chapter 7 [122] [123] [124] [125] [126]
|
||||
texinfo.tex: doing @include of rluser.texi
|
||||
|
||||
|
||||
(/usr/local/src/bash/bash-20241007/lib/readline/doc/rluser.texi Chapter 8
|
||||
[126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137]
|
||||
(/usr/local/src/bash/bash-20241012/lib/readline/doc/rluser.texi Chapter 8
|
||||
[127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138]
|
||||
Underfull \hbox (badness 7540) in paragraph at lines 959--965
|
||||
[]@textrm In the ex-am-ple above, @textttsl C-u[] @textrm is bound to the func
|
||||
-tion
|
||||
@@ -288,7 +291,7 @@ e func-tion
|
||||
.@texttt v
|
||||
.etc.
|
||||
|
||||
[138] [139] [140] [141]
|
||||
[139] [140] [141] [142]
|
||||
Overfull \hbox (26.43913pt too wide) in paragraph at lines 1204--1204
|
||||
[]@texttt Meta-Control-h: backward-kill-word Text after the function name is i
|
||||
gnored[]
|
||||
@@ -301,19 +304,19 @@ gnored[]
|
||||
.@texttt t
|
||||
.etc.
|
||||
|
||||
[142] [143]
|
||||
[143] [144]
|
||||
@fnindfile=@write6
|
||||
\openout6 = `bashref.fn'.
|
||||
|
||||
[144] [145] [146] [147] [148] [149] [150] [151] [152] [153]
|
||||
[154] [155] [156] [157] [158] [159] [160] [161] [162])
|
||||
[145] [146] [147] [148] [149] [150] [151] [152] [153] [154]
|
||||
[155] [156] [157] [158] [159] [160] [161] [162] [163])
|
||||
texinfo.tex: doing @include of hsuser.texi
|
||||
|
||||
|
||||
(/usr/local/src/bash/bash-20241007/lib/readline/doc/hsuser.texi Chapter 9
|
||||
[163] [164] [165] [166] [167] [168] [169]) Chapter 10 [170] [171] [172]
|
||||
[173] [174]
|
||||
Underfull \hbox (badness 10000) in paragraph at lines 10283--10292
|
||||
(/usr/local/src/bash/bash-20241012/lib/readline/doc/hsuser.texi Chapter 9
|
||||
[164] [165] [166] [167] [168] [169] [170]) Chapter 10 [171] [172] [173]
|
||||
[174] [175]
|
||||
Underfull \hbox (badness 10000) in paragraph at lines 10347--10356
|
||||
[]@textrm All of the fol-low-ing op-tions ex-cept for `@texttt alt-array-implem
|
||||
entation[]@textrm '[],
|
||||
|
||||
@@ -326,7 +329,7 @@ entation[]@textrm '[],
|
||||
.etc.
|
||||
|
||||
|
||||
Underfull \hbox (badness 10000) in paragraph at lines 10283--10292
|
||||
Underfull \hbox (badness 10000) in paragraph at lines 10347--10356
|
||||
@textrm `@texttt disabled-builtins[]@textrm '[], `@texttt direxpand-default[]@t
|
||||
extrm '[], `@texttt strict-posix-default[]@textrm '[], and
|
||||
|
||||
@@ -338,21 +341,42 @@ extrm '[], `@texttt strict-posix-default[]@textrm '[], and
|
||||
.@texttt a
|
||||
.etc.
|
||||
|
||||
[175] [176] [177] [178] Appendix A [179] Appendix B [180] [181] [182] [183]
|
||||
[184] [185] [186] Appendix C [187]
|
||||
[176] [177] [178] [179] Appendix A [180] Appendix B [181] [182] [183] [184]
|
||||
[185] [186] [187] Appendix C [188]
|
||||
texinfo.tex: doing @include of fdl.texi
|
||||
|
||||
|
||||
(/usr/local/src/bash/bash-20241007/doc/fdl.texi [188] [189] [190] [191]
|
||||
[192] [193] [194]) Appendix D [195] [196] [197] [198] [199] [200] [201]
|
||||
[202] [203] [204] )
|
||||
(/usr/local/src/bash/bash-20241012/doc/fdl.texi [189] [190] [191] [192]
|
||||
[193] [194] [195]) Appendix D [196] [197] [198] [199] [200] [201] [202]
|
||||
[203] [204] [205] )
|
||||
Here is how much of TeX's memory you used:
|
||||
3531 strings out of 495850
|
||||
40273 string characters out of 6172145
|
||||
88586 words of memory out of 5000000
|
||||
4879 multiletter control sequences out of 15000+600000
|
||||
4113 strings out of 495840
|
||||
47653 string characters out of 6171739
|
||||
144667 words of memory out of 5000000
|
||||
5048 multiletter control sequences out of 15000+600000
|
||||
34315 words of font info for 116 fonts, out of 8000000 for 9000
|
||||
701 hyphenation exceptions out of 8191
|
||||
16i,6n,16p,402b,942s stack positions out of 10000i,1000n,20000p,200000b,200000s
|
||||
16i,6n,16p,331b,983s stack positions out of 10000i,1000n,20000p,200000b,200000s
|
||||
</opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/
|
||||
cm/cmbx12.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cm
|
||||
csc10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmmi10
|
||||
.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmmi12.pfb>
|
||||
</opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmmi9.pfb></opt/
|
||||
local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr10.pfb></opt/local/
|
||||
share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr9.pfb></opt/local/share/t
|
||||
exmf-texlive/fonts/type1/public/amsfonts/cm/cmsl10.pfb></opt/local/share/texmf-
|
||||
texlive/fonts/type1/public/amsfonts/cm/cmsltt10.pfb></opt/local/share/texmf-tex
|
||||
live/fonts/type1/public/amsfonts/cm/cmsy10.pfb></opt/local/share/texmf-texlive/
|
||||
fonts/type1/public/amsfonts/cm/cmti10.pfb></opt/local/share/texmf-texlive/fonts
|
||||
/type1/public/amsfonts/cm/cmtt10.pfb></opt/local/share/texmf-texlive/fonts/type
|
||||
1/public/amsfonts/cm/cmtt12.pfb></opt/local/share/texmf-texlive/fonts/type1/pub
|
||||
lic/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texlive/fonts/type1/public/cm
|
||||
-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fonts/type1/public/cm-super
|
||||
/sfrm1440.pfb>
|
||||
Output written on bashref.pdf (211 pages, 844363 bytes).
|
||||
PDF statistics:
|
||||
2923 PDF objects out of 2984 (max. 8388607)
|
||||
2664 compressed objects within 27 object streams
|
||||
339 named destinations out of 1000 (max. 500000)
|
||||
1157 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||
|
||||
Output written on bashref.dvi (210 pages, 880460 bytes).
|
||||
|
||||
Binary file not shown.
+1079
-1026
File diff suppressed because it is too large
Load Diff
+162
-98
@@ -2126,7 +2126,7 @@ corresponding element from the directory stack, as it would be displayed
|
||||
by the @code{dirs} builtin invoked with the characters following tilde
|
||||
in the tilde-prefix as an argument (@pxref{The Directory Stack}).
|
||||
If the tilde-prefix, sans the tilde, consists of a number without a
|
||||
leading @samp{+} or @samp{-}, @samp{+} is assumed.
|
||||
leading @samp{+} or @samp{-}, tilde expansion assumes @samp{+}.
|
||||
|
||||
The results of tilde expansion are treated as if they were quoted, so
|
||||
the replacement is not subject to word splitting and filename expansion.
|
||||
@@ -2262,7 +2262,7 @@ unset-or-null
|
||||
@item $@{@var{parameter}:=@var{word}@}
|
||||
If @var{parameter} is unset or null, the expansion of @var{word}
|
||||
is assigned to @var{parameter},
|
||||
and the result of the expansion
|
||||
and the result of the expansion
|
||||
is the final value of @var{parameter}.
|
||||
Positional parameters and special parameters may not be assigned
|
||||
in this way.
|
||||
@@ -2280,9 +2280,10 @@ DEFAULT
|
||||
|
||||
@item $@{@var{parameter}:?@var{word}@}
|
||||
If @var{parameter}
|
||||
is null or unset, the expansion of @var{word} (or a message
|
||||
is null or unset, the shell writes
|
||||
the expansion of @var{word} (or a message
|
||||
to that effect if @var{word}
|
||||
is not present) is written to the standard error and the shell, if it
|
||||
is not present) to the standard error and, if it
|
||||
is not interactive, exits with a non-zero status.
|
||||
An interactive shell does not exit, but does not execute the command
|
||||
associated with the expansion.
|
||||
@@ -8291,9 +8292,13 @@ before executing any of the commands on that line or the compound command.
|
||||
Aliases are expanded when a command is read, not when it is executed.
|
||||
Therefore, an
|
||||
alias definition appearing on the same line as another
|
||||
command does not take effect until the shell reads the next line of input.
|
||||
command does not take effect until the shell reads the next line of input,
|
||||
and an alias definition in a compound command does not take
|
||||
effect until the shell parses and executes the entire compound command.
|
||||
The commands following the alias definition
|
||||
on that line are not affected by the new alias.
|
||||
on that line,
|
||||
or in the rest of a compound command,
|
||||
are not affected by the new alias.
|
||||
This behavior is also an issue when functions are executed.
|
||||
Aliases are expanded when a function definition is read,
|
||||
not when the function is executed, because a function definition
|
||||
@@ -9536,14 +9541,18 @@ Bash allows you to access its facilities.
|
||||
Job control
|
||||
refers to the ability to selectively stop (suspend)
|
||||
the execution of processes and continue (resume)
|
||||
their execution at a later point. A user typically employs
|
||||
their execution at a later point.
|
||||
A user typically employs
|
||||
this facility via an interactive interface supplied jointly
|
||||
by the operating system kernel's terminal driver and Bash.
|
||||
|
||||
The shell associates a @var{job} with each pipeline. It keeps a
|
||||
table of currently executing jobs, which may be listed with the
|
||||
@code{jobs} command. When Bash starts a job
|
||||
asynchronously, it prints a line that looks
|
||||
The shell associates a @var{job} with each pipeline.
|
||||
It keeps a
|
||||
table of currently executing jobs, which the
|
||||
@code{jobs} command will display.
|
||||
Each job has a @dfn{job number}, which @code{jobs} displays between brackets.
|
||||
Job numbers start at 1.
|
||||
When Bash starts a job asynchronously, it prints a line that looks
|
||||
like:
|
||||
@example
|
||||
[1] 25647
|
||||
@@ -9551,19 +9560,26 @@ like:
|
||||
@noindent
|
||||
indicating that this job is job number 1 and that the process @sc{id}
|
||||
of the last process in the pipeline associated with this job is
|
||||
25647. All of the processes in a single pipeline are members of
|
||||
the same job. Bash uses the @var{job} abstraction as the
|
||||
basis for job control.
|
||||
25647.
|
||||
All of the processes in a single pipeline are members of
|
||||
the same job.
|
||||
Bash uses the @var{job} abstraction as the basis for job control.
|
||||
|
||||
To facilitate the implementation of the user interface to job
|
||||
control, the operating system maintains the notion of a current terminal
|
||||
process group @sc{id}. Members of this process group (processes whose
|
||||
To facilitate the implementation of the user interface to job control,
|
||||
each process has a @dfn{process group @sc{id}}, and
|
||||
the operating system maintains the notion of a current terminal
|
||||
process group @sc{id}.
|
||||
Processes that have the same process group ID are said to be part of
|
||||
the same @dfn{process group}.
|
||||
Members of the foreground process group (processes whose
|
||||
process group @sc{id} is equal to the current terminal process group
|
||||
@sc{id}) receive keyboard-generated signals such as @code{SIGINT}.
|
||||
These processes are said to be in the foreground. Background
|
||||
processes are those whose process group @sc{id} differs from the
|
||||
terminal's; such processes are immune to keyboard-generated
|
||||
signals. Only foreground processes are allowed to read from or, if
|
||||
Processes in the foreground process group are said to be
|
||||
foreground processes.
|
||||
Background processes
|
||||
are those whose process group @sc{id} differs from the terminal's;
|
||||
such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if
|
||||
the user so specifies with @code{stty tostop}, write to the terminal.
|
||||
Background processes which attempt to
|
||||
read from (write to when @code{tostop} is in effect) the
|
||||
@@ -9572,72 +9588,101 @@ signal by the kernel's terminal driver,
|
||||
which, unless caught, suspends the process.
|
||||
|
||||
If the operating system on which Bash is running supports
|
||||
job control, Bash contains facilities to use it. Typing the
|
||||
job control, Bash contains facilities to use it.
|
||||
Typing the
|
||||
@dfn{suspend} character (typically @samp{^Z}, Control-Z) while a
|
||||
process is running causes that process to be stopped and returns
|
||||
control to Bash. Typing the @dfn{delayed suspend} character
|
||||
(typically @samp{^Y}, Control-Y) causes the process to be stopped
|
||||
when it attempts to read input from the terminal, and control to
|
||||
be returned to Bash. The user then manipulates the state of
|
||||
this job, using the @code{bg} command to continue it in the
|
||||
background, the @code{fg} command to continue it in the
|
||||
foreground, or the @code{kill} command to kill it. A @samp{^Z}
|
||||
process is running stops that process
|
||||
and returns control to Bash.
|
||||
Typing the @dfn{delayed suspend} character
|
||||
(typically @samp{^Y}, Control-Y) causes the process to stop
|
||||
when it attempts to read input from the terminal,
|
||||
and returns control to Bash.
|
||||
The user then manipulates the state of
|
||||
this job, using
|
||||
the @code{bg} command to continue it in the background,
|
||||
the @code{fg} command to continue it in the foreground, or
|
||||
the @code{kill} command to kill it.
|
||||
The suspend character
|
||||
takes effect immediately, and has the additional side effect of
|
||||
causing pending output and typeahead to be discarded.
|
||||
discarding any pending output and typeahead.
|
||||
If you want to force a background process to stop, or stop a process
|
||||
that's not associated with your terminal session,
|
||||
send it the @code{SIGSTOP} signal using @code{kill}.
|
||||
|
||||
There are a number of ways to refer to a job in the shell. The
|
||||
character @samp{%} introduces a job specification (@dfn{jobspec}).
|
||||
There are a number of ways to refer to a job in the shell.
|
||||
The @samp{%} character introduces a @dfn{job specification} (jobspec).
|
||||
|
||||
Job number @code{n} may be referred to as @samp{%n}.
|
||||
A job may also be referred to
|
||||
using a prefix of the name used to start it,
|
||||
or using a substring that appears in its command line.
|
||||
For example, @samp{%ce} refers
|
||||
to a job whose command name begins with @samp{ce}.
|
||||
Using @samp{%?ce}, on the
|
||||
other hand, refers to any job containing the string @samp{ce} in
|
||||
its command line.
|
||||
If the prefix or substring matches more than one job,
|
||||
Bash reports an error.
|
||||
|
||||
The symbols @samp{%%} and @samp{%+} refer to the shell's notion of the
|
||||
current job, which is the last job stopped while it was in the foreground
|
||||
or started in the background.
|
||||
@dfn{current job}.
|
||||
A single @samp{%} (with no accompanying job specification) also refers
|
||||
to the current job.
|
||||
The previous job may be referenced using @samp{%-}.
|
||||
@samp{%-} refers to the @dfn{previous job}.
|
||||
When a job starts in the background,
|
||||
a job stops while in the foreground,
|
||||
or a job is resumed in the background,
|
||||
it becomes the current job.
|
||||
The job that was the current job becomes the previous job.
|
||||
When the current job terminates, the previous job becomes the
|
||||
current job.
|
||||
If there is only a single job, @samp{%+} and @samp{%-} can both be used
|
||||
to refer to that job.
|
||||
In output pertaining to jobs (e.g., the output of the @code{jobs}
|
||||
command), the current job is always flagged with a @samp{+}, and the
|
||||
command), the current job is always marked with a @samp{+}, and the
|
||||
previous job with a @samp{-}.
|
||||
|
||||
A job may also be referred to
|
||||
using a prefix of the name used to start it, or using a substring
|
||||
that appears in its command line. For example, @samp{%ce} refers
|
||||
to a stopped job whose command name begins with @samp{ce}.
|
||||
Using @samp{%?ce}, on the
|
||||
other hand, refers to any job containing the string @samp{ce} in
|
||||
its command line. If the prefix or substring matches more than one job,
|
||||
Bash reports an error.
|
||||
|
||||
Simply naming a job can be used to bring it into the foreground:
|
||||
@samp{%1} is a synonym for @samp{fg %1}, bringing job 1 from the
|
||||
background into the foreground. Similarly, @samp{%1 &} resumes
|
||||
job 1 in the background, equivalent to @samp{bg %1}
|
||||
background into the foreground.
|
||||
Similarly, @samp{%1 &} resumes
|
||||
job 1 in the background, equivalent to @samp{bg %1}.
|
||||
|
||||
The shell learns immediately whenever a job changes state.
|
||||
Normally, Bash waits until it is about to print a prompt
|
||||
before reporting changes in a job's status so as to not interrupt
|
||||
Normally, Bash waits until it is about to print a prompt before
|
||||
notifying the user about
|
||||
changes in a job's status so as to not interrupt
|
||||
any other output,
|
||||
though it will notify of changes in a job's status after a
|
||||
foreground command in
|
||||
a list completes, before executing the next command.
|
||||
a list completes, before executing the next command in the list.
|
||||
If the @option{-b} option to the @code{set} builtin is enabled,
|
||||
Bash reports such changes immediately (@pxref{The Set Builtin}).
|
||||
Any trap on @code{SIGCHLD} is executed for each child process
|
||||
that exits.
|
||||
Bash executes any trap on @code{SIGCHLD}
|
||||
for each child process that terminates.
|
||||
|
||||
If an attempt to exit Bash is made while jobs are stopped, (or running, if
|
||||
When a job terminates and Bash notifies the user about it,
|
||||
Bash removes the job from the jobs table.
|
||||
It will not appear in @code{jobs} output, but @code{wait} will
|
||||
report its exit status, as long as it's supplied the process ID
|
||||
associated with the job as an argument.
|
||||
When the table is empty, job numbers start over at 1.
|
||||
|
||||
If a user attempts to exit
|
||||
Bash while jobs are stopped, (or running, if
|
||||
the @code{checkjobs} option is enabled -- see @ref{The Shopt Builtin}), the
|
||||
shell prints a warning message, and if the @code{checkjobs} option is
|
||||
enabled, lists the jobs and their statuses.
|
||||
The @code{jobs} command may then be used to inspect their status.
|
||||
If a second attempt to exit is made without an intervening command,
|
||||
Bash does not print another warning, and any stopped jobs are terminated.
|
||||
If the user immediately attempts to exit again,
|
||||
without an intervening command,
|
||||
Bash does not print another warning, and
|
||||
terminates any stopped jobs.
|
||||
|
||||
When the shell is waiting for a job or process using the @code{wait}
|
||||
builtin, and job control is enabled, @code{wait} will return when the
|
||||
job changes state. The @option{-f} option causes @code{wait} to wait
|
||||
job changes state.
|
||||
The @option{-f} option causes @code{wait} to wait
|
||||
until the job or process terminates before returning.
|
||||
|
||||
@node Job Control Builtins
|
||||
@@ -9653,8 +9698,9 @@ bg [@var{jobspec} @dots{}]
|
||||
|
||||
Resume each suspended job @var{jobspec} in the background, as if it
|
||||
had been started with @samp{&}.
|
||||
If @var{jobspec} is not supplied, the current job is used.
|
||||
The return status is zero unless it is run when job control is not
|
||||
If @var{jobspec} is not supplied, the shell uses its
|
||||
notion of the current job.
|
||||
@code{bg} returns zero unless it is run when job control is not
|
||||
enabled, or, when run with job control enabled, any
|
||||
@var{jobspec} was not found or specifies a job
|
||||
that was started without job control.
|
||||
@@ -9666,7 +9712,7 @@ fg [@var{jobspec}]
|
||||
@end example
|
||||
|
||||
Resume the job @var{jobspec} in the foreground and make it the current job.
|
||||
If @var{jobspec} is not supplied, resume the current job.
|
||||
If @var{jobspec} is not supplied, @code{fg} resumes the current job.
|
||||
The return status is that of the command placed into the foreground,
|
||||
or non-zero if run when job control is disabled or, when run with
|
||||
job control enabled, @var{jobspec} does not specify a valid job or
|
||||
@@ -9703,6 +9749,10 @@ Display only stopped jobs.
|
||||
If @var{jobspec} is supplied,
|
||||
@code{jobs} restricts output to information about that job.
|
||||
If @var{jobspec} is not supplied, @code{jobs} lists the status of all jobs.
|
||||
The return status is zero unless an invalid option is encountered
|
||||
or an invalid
|
||||
@var{jobspec}
|
||||
is supplied.
|
||||
|
||||
If the @option{-x} option is supplied, @code{jobs} replaces any
|
||||
@var{jobspec} found in @var{command} or @var{arguments} with the
|
||||
@@ -9712,12 +9762,14 @@ passing it @var{argument}s, returning its exit status.
|
||||
@item kill
|
||||
@btindex kill
|
||||
@example
|
||||
kill [-s @var{sigspec}] [-n @var{signum}] [-@var{sigspec}] @var{jobspec} or @var{pid}
|
||||
kill [-s @var{sigspec}] [-n @var{signum}] [-@var{sigspec}] @var{id} [@dots{}]
|
||||
kill -l|-L [@var{exit_status}]
|
||||
@end example
|
||||
|
||||
Send a signal specified by @var{sigspec} or @var{signum} to the process
|
||||
named by job specification @var{jobspec} or process @sc{id} @var{pid}.
|
||||
Send a signal specified by @var{sigspec} or @var{signum} to the processes
|
||||
named by each @var{id}.
|
||||
Each @var{id} may be a
|
||||
job specification @var{jobspec} or process @sc{id} @var{pid}.
|
||||
@var{sigspec} is either a case-insensitive signal name such as
|
||||
@code{SIGINT} (with or without the @code{SIG} prefix)
|
||||
or a signal number; @var{signum} is a signal number.
|
||||
@@ -9725,11 +9777,15 @@ If @var{sigspec} and @var{signum} are not present, @code{kill}
|
||||
sends @code{SIGTERM}.
|
||||
|
||||
The @option{-l} option lists the signal names.
|
||||
If any arguments are supplied when @option{-l} is supplied, the names of the
|
||||
signals corresponding to the arguments are listed, and the return status
|
||||
is zero.
|
||||
If any arguments are supplied when @option{-l} is supplied,
|
||||
@code{kill} lists the names of the signals corresponding to the arguments,
|
||||
and the return status is zero.
|
||||
@var{exit_status} is a number specifying a signal number or the exit
|
||||
status of a process terminated by a signal.
|
||||
status of a process terminated by a signal;
|
||||
if it is supplied, @code{kill} prints the name of the signal that caused
|
||||
the process to terminate.
|
||||
@code{kill} assumes that process exit statuses are greater than 128;
|
||||
anything less than that is a signal number.
|
||||
The @option{-L} option is equivalent to @option{-l}.
|
||||
|
||||
The return status is zero if at least one signal was successfully sent,
|
||||
@@ -9743,8 +9799,9 @@ wait [-fn] [-p @var{varname}] [@var{id} @dots{}]
|
||||
|
||||
Wait until the child process specified by each @var{id} exits and
|
||||
return the exit status of the last @var{id}.
|
||||
Each @var{id} may be a @var{pid} or job specification @var{jobspec};
|
||||
if a job spec is supplied, @code{wait} waits for all processes in the job.
|
||||
Each @var{id} may be a process @sc{id} @var{pid}
|
||||
or a job specification @var{jobspec};
|
||||
if a jobspec is supplied, @code{wait} waits for all processes in the job.
|
||||
|
||||
If no options or @var{id}s are supplied,
|
||||
@code{wait} waits for all running background jobs and
|
||||
@@ -9753,20 +9810,21 @@ if its process id is the same as @var{$!},
|
||||
and the return status is zero.
|
||||
|
||||
If the @option{-n} option is supplied, @code{wait} waits for any one of
|
||||
the @var{id}s or, if no @var{id}s are supplied, any job
|
||||
or process substitution,
|
||||
the @var{id}s or,
|
||||
if no @var{id}s are supplied, any job or process substitution,
|
||||
to complete and returns its exit status.
|
||||
If none of the supplied @var{id}s is a child of the shell,
|
||||
or if no arguments are supplied and the shell has no unwaited-for children,
|
||||
the exit status is 127.
|
||||
|
||||
If the @option{-p} option is supplied, the process or job identifier
|
||||
of the job for which the exit status is returned is assigned to the
|
||||
If the @option{-p} option is supplied, @code{wait} assigns
|
||||
the process or job identifier of the job
|
||||
for which the exit status is returned to the
|
||||
variable @var{varname} named by the option argument.
|
||||
The variable,
|
||||
which cannot be readonly,
|
||||
will be unset initially, before any assignment.
|
||||
This is useful only when the @option{-n} option is supplied.
|
||||
This is useful only when used with the @option{-n} option.
|
||||
|
||||
Supplying the @option{-f} option, when job control is enabled,
|
||||
forces @code{wait} to wait for each @var{id} to terminate before
|
||||
@@ -9788,21 +9846,27 @@ disown [-ar] [-h] [@var{id} @dots{}]
|
||||
|
||||
Without options, remove each @var{id} from the table of
|
||||
active jobs.
|
||||
Each @var{id} may be a @var{pid} or job specification @var{jobspec};
|
||||
Each @var{id} may be a job specification @var{jobspec}
|
||||
or a process @sc{id} @var{pid};
|
||||
if @var{id} is a @var{pid},
|
||||
@code{disown} uses the job containing @var{pid}.
|
||||
If the @option{-h} option is supplied, the job is not removed from the table,
|
||||
but is marked so that @code{SIGHUP} is not sent to the job if the shell
|
||||
receives a @code{SIGHUP}.
|
||||
If @var{id} is not present, and neither the @option{-a} nor the
|
||||
@option{-r} option is supplied, @code{disown} removes the current job.
|
||||
@code{disown} uses the job containing @var{pid} as @var{jobspec}.
|
||||
|
||||
If the @option{-h} option is supplied,
|
||||
@code{disown} does not remove the jobs corresponding to each @code{id}
|
||||
from the jobs table,
|
||||
but rather marks them so the shell does not send
|
||||
@code{SIGHUP}
|
||||
to the job if the shell receives a
|
||||
@code{SIGHUP}.
|
||||
|
||||
If no @var{id} is supplied, the @option{-a} option means to remove or
|
||||
mark all jobs; the @option{-r} option without an @var{id}
|
||||
argument restricts operation to running jobs.
|
||||
argument removes or marks running jobs.
|
||||
If no @var{id} is supplied,
|
||||
and neither the @option{-a} nor the @option{-r} option is supplied,
|
||||
@code{disown} removes or marks the current job.
|
||||
|
||||
The return value is 0 unless an @var{id}
|
||||
does not specify a valid job.
|
||||
The return value is 0 unless an @var{id} does not specify a valid job.
|
||||
|
||||
@item suspend
|
||||
@btindex suspend
|
||||
@@ -9824,8 +9888,8 @@ is not supplied.
|
||||
@end table
|
||||
|
||||
When job control is not active, the @code{kill} and @code{wait}
|
||||
builtins do not accept @var{jobspec} arguments. They must be
|
||||
supplied process @sc{id}s.
|
||||
builtins do not accept @var{jobspec} arguments.
|
||||
They must be supplied process @sc{id}s.
|
||||
|
||||
@node Job Control Variables
|
||||
@section Job Control Variables
|
||||
@@ -9835,24 +9899,24 @@ supplied process @sc{id}s.
|
||||
@item auto_resume
|
||||
This variable controls how the shell interacts with the user and
|
||||
job control.
|
||||
If this variable exists then single-word simple
|
||||
commands without redirections are treated as candidates for resumption
|
||||
If this variable exists then simple commands
|
||||
consisting of only a single word,
|
||||
without redirections, are treated as candidates for resumption
|
||||
of an existing job.
|
||||
There is no ambiguity allowed; if there is more than one job
|
||||
beginning with the string typed, then
|
||||
the most recently accessed job is selected.
|
||||
beginning with or containing the word, then
|
||||
this selects the most recently accessed job.
|
||||
The name of a stopped job, in this context, is the command line
|
||||
used to start it.
|
||||
used to start it, as displayed by @code{jobs}.
|
||||
If this variable is set to the value @samp{exact},
|
||||
the string supplied must match the name of a stopped job exactly;
|
||||
the word must match the name of a stopped job exactly;
|
||||
if set to @samp{substring},
|
||||
the string supplied needs to match a substring of the name of a
|
||||
stopped job.
|
||||
the word needs to match a substring of the name of a stopped job.
|
||||
The @samp{substring} value provides functionality
|
||||
analogous to the @samp{%?} job @sc{id} (@pxref{Job Control Basics}).
|
||||
If set to any other value, the supplied string must
|
||||
be a prefix of a stopped job's name; this provides functionality
|
||||
analogous to the @samp{%} job @sc{id}.
|
||||
analogous to the @samp{%?string} job @sc{id} (@pxref{Job Control Basics}).
|
||||
If set to any other value (e.g., @samp{prefix}),
|
||||
the word must be a prefix of a stopped job's name;
|
||||
this provides functionality analogous to the @samp{%string} job @sc{id}.
|
||||
|
||||
@end vtable
|
||||
|
||||
|
||||
+52
-52
@@ -89,55 +89,55 @@
|
||||
@numchapentry{Job Control}{7}{Job Control}{123}
|
||||
@numsecentry{Job Control Basics}{7.1}{Job Control Basics}{123}
|
||||
@numsecentry{Job Control Builtins}{7.2}{Job Control Builtins}{124}
|
||||
@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{126}
|
||||
@numchapentry{Command Line Editing}{8}{Command Line Editing}{127}
|
||||
@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{127}
|
||||
@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{127}
|
||||
@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{128}
|
||||
@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{128}
|
||||
@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{129}
|
||||
@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{129}
|
||||
@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{130}
|
||||
@numsecentry{Readline Init File}{8.3}{Readline Init File}{130}
|
||||
@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{130}
|
||||
@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{140}
|
||||
@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{141}
|
||||
@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{144}
|
||||
@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{144}
|
||||
@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{145}
|
||||
@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{147}
|
||||
@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{148}
|
||||
@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{150}
|
||||
@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{150}
|
||||
@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{152}
|
||||
@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{152}
|
||||
@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{155}
|
||||
@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{155}
|
||||
@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{157}
|
||||
@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{161}
|
||||
@numchapentry{Using History Interactively}{9}{Using History Interactively}{164}
|
||||
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{164}
|
||||
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{165}
|
||||
@numsecentry{History Expansion}{9.3}{History Interaction}{167}
|
||||
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{168}
|
||||
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{169}
|
||||
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{170}
|
||||
@numchapentry{Installing Bash}{10}{Installing Bash}{171}
|
||||
@numsecentry{Basic Installation}{10.1}{Basic Installation}{171}
|
||||
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{172}
|
||||
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{172}
|
||||
@numsecentry{Installation Names}{10.4}{Installation Names}{173}
|
||||
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{173}
|
||||
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{173}
|
||||
@numsecentry{Operation Controls}{10.7}{Operation Controls}{174}
|
||||
@numsecentry{Optional Features}{10.8}{Optional Features}{174}
|
||||
@appentry{Reporting Bugs}{A}{Reporting Bugs}{180}
|
||||
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{181}
|
||||
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{186}
|
||||
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{188}
|
||||
@appentry{Indexes}{D}{Indexes}{196}
|
||||
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{196}
|
||||
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{197}
|
||||
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{198}
|
||||
@appsecentry{Function Index}{D.4}{Function Index}{200}
|
||||
@appsecentry{Concept Index}{D.5}{Concept Index}{202}
|
||||
@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{127}
|
||||
@numchapentry{Command Line Editing}{8}{Command Line Editing}{128}
|
||||
@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{128}
|
||||
@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{128}
|
||||
@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{129}
|
||||
@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{129}
|
||||
@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{130}
|
||||
@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{130}
|
||||
@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{131}
|
||||
@numsecentry{Readline Init File}{8.3}{Readline Init File}{131}
|
||||
@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{131}
|
||||
@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{141}
|
||||
@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{142}
|
||||
@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{145}
|
||||
@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{145}
|
||||
@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{146}
|
||||
@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{148}
|
||||
@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{149}
|
||||
@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{151}
|
||||
@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{151}
|
||||
@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{153}
|
||||
@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{153}
|
||||
@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{156}
|
||||
@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{156}
|
||||
@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{158}
|
||||
@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{162}
|
||||
@numchapentry{Using History Interactively}{9}{Using History Interactively}{165}
|
||||
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{165}
|
||||
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{166}
|
||||
@numsecentry{History Expansion}{9.3}{History Interaction}{168}
|
||||
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{169}
|
||||
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{170}
|
||||
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{171}
|
||||
@numchapentry{Installing Bash}{10}{Installing Bash}{172}
|
||||
@numsecentry{Basic Installation}{10.1}{Basic Installation}{172}
|
||||
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{173}
|
||||
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{173}
|
||||
@numsecentry{Installation Names}{10.4}{Installation Names}{174}
|
||||
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{174}
|
||||
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{174}
|
||||
@numsecentry{Operation Controls}{10.7}{Operation Controls}{175}
|
||||
@numsecentry{Optional Features}{10.8}{Optional Features}{175}
|
||||
@appentry{Reporting Bugs}{A}{Reporting Bugs}{181}
|
||||
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{182}
|
||||
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{187}
|
||||
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{189}
|
||||
@appentry{Indexes}{D}{Indexes}{197}
|
||||
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{197}
|
||||
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{198}
|
||||
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{199}
|
||||
@appsecentry{Function Index}{D.4}{Function Index}{201}
|
||||
@appsecentry{Concept Index}{D.5}{Concept Index}{203}
|
||||
|
||||
+47
-47
@@ -130,50 +130,50 @@
|
||||
\entry{TMOUT}{97}{\code {TMOUT}}
|
||||
\entry{TMPDIR}{97}{\code {TMPDIR}}
|
||||
\entry{UID}{97}{\code {UID}}
|
||||
\entry{auto_resume}{126}{\code {auto_resume}}
|
||||
\entry{active-region-start-color}{131}{\code {active-region-start-color}}
|
||||
\entry{active-region-end-color}{131}{\code {active-region-end-color}}
|
||||
\entry{bell-style}{131}{\code {bell-style}}
|
||||
\entry{bind-tty-special-chars}{132}{\code {bind-tty-special-chars}}
|
||||
\entry{blink-matching-paren}{132}{\code {blink-matching-paren}}
|
||||
\entry{colored-completion-prefix}{132}{\code {colored-completion-prefix}}
|
||||
\entry{colored-stats}{132}{\code {colored-stats}}
|
||||
\entry{comment-begin}{132}{\code {comment-begin}}
|
||||
\entry{completion-display-width}{132}{\code {completion-display-width}}
|
||||
\entry{completion-ignore-case}{132}{\code {completion-ignore-case}}
|
||||
\entry{completion-map-case}{132}{\code {completion-map-case}}
|
||||
\entry{completion-prefix-display-length}{132}{\code {completion-prefix-display-length}}
|
||||
\entry{completion-query-items}{133}{\code {completion-query-items}}
|
||||
\entry{convert-meta}{133}{\code {convert-meta}}
|
||||
\entry{disable-completion}{133}{\code {disable-completion}}
|
||||
\entry{echo-control-characters}{133}{\code {echo-control-characters}}
|
||||
\entry{editing-mode}{133}{\code {editing-mode}}
|
||||
\entry{emacs-mode-string}{133}{\code {emacs-mode-string}}
|
||||
\entry{enable-active-region The}{134}{\code {enable-active-region The}}
|
||||
\entry{enable-bracketed-paste}{134}{\code {enable-bracketed-paste}}
|
||||
\entry{enable-keypad}{134}{\code {enable-keypad}}
|
||||
\entry{enable-meta-key}{134}{\code {enable-meta-key}}
|
||||
\entry{expand-tilde}{134}{\code {expand-tilde}}
|
||||
\entry{force-meta-prefix}{134}{\code {force-meta-prefix}}
|
||||
\entry{history-preserve-point}{135}{\code {history-preserve-point}}
|
||||
\entry{history-size}{135}{\code {history-size}}
|
||||
\entry{horizontal-scroll-mode}{135}{\code {horizontal-scroll-mode}}
|
||||
\entry{input-meta}{135}{\code {input-meta}}
|
||||
\entry{meta-flag}{135}{\code {meta-flag}}
|
||||
\entry{isearch-terminators}{135}{\code {isearch-terminators}}
|
||||
\entry{keymap}{135}{\code {keymap}}
|
||||
\entry{mark-modified-lines}{136}{\code {mark-modified-lines}}
|
||||
\entry{mark-symlinked-directories}{136}{\code {mark-symlinked-directories}}
|
||||
\entry{match-hidden-files}{136}{\code {match-hidden-files}}
|
||||
\entry{menu-complete-display-prefix}{136}{\code {menu-complete-display-prefix}}
|
||||
\entry{output-meta}{136}{\code {output-meta}}
|
||||
\entry{page-completions}{136}{\code {page-completions}}
|
||||
\entry{revert-all-at-newline}{137}{\code {revert-all-at-newline}}
|
||||
\entry{search-ignore-case}{137}{\code {search-ignore-case}}
|
||||
\entry{show-all-if-ambiguous}{137}{\code {show-all-if-ambiguous}}
|
||||
\entry{show-all-if-unmodified}{137}{\code {show-all-if-unmodified}}
|
||||
\entry{show-mode-in-prompt}{137}{\code {show-mode-in-prompt}}
|
||||
\entry{skip-completed-text}{137}{\code {skip-completed-text}}
|
||||
\entry{vi-cmd-mode-string}{137}{\code {vi-cmd-mode-string}}
|
||||
\entry{vi-ins-mode-string}{138}{\code {vi-ins-mode-string}}
|
||||
\entry{visible-stats}{138}{\code {visible-stats}}
|
||||
\entry{auto_resume}{127}{\code {auto_resume}}
|
||||
\entry{active-region-start-color}{132}{\code {active-region-start-color}}
|
||||
\entry{active-region-end-color}{132}{\code {active-region-end-color}}
|
||||
\entry{bell-style}{132}{\code {bell-style}}
|
||||
\entry{bind-tty-special-chars}{133}{\code {bind-tty-special-chars}}
|
||||
\entry{blink-matching-paren}{133}{\code {blink-matching-paren}}
|
||||
\entry{colored-completion-prefix}{133}{\code {colored-completion-prefix}}
|
||||
\entry{colored-stats}{133}{\code {colored-stats}}
|
||||
\entry{comment-begin}{133}{\code {comment-begin}}
|
||||
\entry{completion-display-width}{133}{\code {completion-display-width}}
|
||||
\entry{completion-ignore-case}{133}{\code {completion-ignore-case}}
|
||||
\entry{completion-map-case}{133}{\code {completion-map-case}}
|
||||
\entry{completion-prefix-display-length}{133}{\code {completion-prefix-display-length}}
|
||||
\entry{completion-query-items}{134}{\code {completion-query-items}}
|
||||
\entry{convert-meta}{134}{\code {convert-meta}}
|
||||
\entry{disable-completion}{134}{\code {disable-completion}}
|
||||
\entry{echo-control-characters}{134}{\code {echo-control-characters}}
|
||||
\entry{editing-mode}{134}{\code {editing-mode}}
|
||||
\entry{emacs-mode-string}{134}{\code {emacs-mode-string}}
|
||||
\entry{enable-active-region The}{135}{\code {enable-active-region The}}
|
||||
\entry{enable-bracketed-paste}{135}{\code {enable-bracketed-paste}}
|
||||
\entry{enable-keypad}{135}{\code {enable-keypad}}
|
||||
\entry{enable-meta-key}{135}{\code {enable-meta-key}}
|
||||
\entry{expand-tilde}{135}{\code {expand-tilde}}
|
||||
\entry{force-meta-prefix}{135}{\code {force-meta-prefix}}
|
||||
\entry{history-preserve-point}{136}{\code {history-preserve-point}}
|
||||
\entry{history-size}{136}{\code {history-size}}
|
||||
\entry{horizontal-scroll-mode}{136}{\code {horizontal-scroll-mode}}
|
||||
\entry{input-meta}{136}{\code {input-meta}}
|
||||
\entry{meta-flag}{136}{\code {meta-flag}}
|
||||
\entry{isearch-terminators}{136}{\code {isearch-terminators}}
|
||||
\entry{keymap}{136}{\code {keymap}}
|
||||
\entry{mark-modified-lines}{137}{\code {mark-modified-lines}}
|
||||
\entry{mark-symlinked-directories}{137}{\code {mark-symlinked-directories}}
|
||||
\entry{match-hidden-files}{137}{\code {match-hidden-files}}
|
||||
\entry{menu-complete-display-prefix}{137}{\code {menu-complete-display-prefix}}
|
||||
\entry{output-meta}{137}{\code {output-meta}}
|
||||
\entry{page-completions}{137}{\code {page-completions}}
|
||||
\entry{revert-all-at-newline}{138}{\code {revert-all-at-newline}}
|
||||
\entry{search-ignore-case}{138}{\code {search-ignore-case}}
|
||||
\entry{show-all-if-ambiguous}{138}{\code {show-all-if-ambiguous}}
|
||||
\entry{show-all-if-unmodified}{138}{\code {show-all-if-unmodified}}
|
||||
\entry{show-mode-in-prompt}{138}{\code {show-mode-in-prompt}}
|
||||
\entry{skip-completed-text}{138}{\code {skip-completed-text}}
|
||||
\entry{vi-cmd-mode-string}{138}{\code {vi-cmd-mode-string}}
|
||||
\entry{vi-ins-mode-string}{139}{\code {vi-ins-mode-string}}
|
||||
\entry{visible-stats}{139}{\code {visible-stats}}
|
||||
|
||||
+47
-47
@@ -26,9 +26,9 @@
|
||||
\initial {0}
|
||||
\entry{\code {0}}{24}
|
||||
\initial {A}
|
||||
\entry{\code {active-region-end-color}}{131}
|
||||
\entry{\code {active-region-start-color}}{131}
|
||||
\entry{\code {auto_resume}}{126}
|
||||
\entry{\code {active-region-end-color}}{132}
|
||||
\entry{\code {active-region-start-color}}{132}
|
||||
\entry{\code {auto_resume}}{127}
|
||||
\initial {B}
|
||||
\entry{\code {BASH}}{85}
|
||||
\entry{\code {BASH_ALIASES}}{85}
|
||||
@@ -52,16 +52,16 @@
|
||||
\entry{\code {BASH_XTRACEFD}}{88}
|
||||
\entry{\code {BASHOPTS}}{85}
|
||||
\entry{\code {BASHPID}}{85}
|
||||
\entry{\code {bell-style}}{131}
|
||||
\entry{\code {bind-tty-special-chars}}{132}
|
||||
\entry{\code {blink-matching-paren}}{132}
|
||||
\entry{\code {bell-style}}{132}
|
||||
\entry{\code {bind-tty-special-chars}}{133}
|
||||
\entry{\code {blink-matching-paren}}{133}
|
||||
\initial {C}
|
||||
\entry{\code {CDPATH}}{84}
|
||||
\entry{\code {CHILD_MAX}}{88}
|
||||
\entry{\code {colored-completion-prefix}}{132}
|
||||
\entry{\code {colored-stats}}{132}
|
||||
\entry{\code {colored-completion-prefix}}{133}
|
||||
\entry{\code {colored-stats}}{133}
|
||||
\entry{\code {COLUMNS}}{88}
|
||||
\entry{\code {comment-begin}}{132}
|
||||
\entry{\code {comment-begin}}{133}
|
||||
\entry{\code {COMP_CWORD}}{88}
|
||||
\entry{\code {COMP_KEY}}{88}
|
||||
\entry{\code {COMP_LINE}}{88}
|
||||
@@ -69,36 +69,36 @@
|
||||
\entry{\code {COMP_TYPE}}{89}
|
||||
\entry{\code {COMP_WORDBREAKS}}{89}
|
||||
\entry{\code {COMP_WORDS}}{89}
|
||||
\entry{\code {completion-display-width}}{132}
|
||||
\entry{\code {completion-ignore-case}}{132}
|
||||
\entry{\code {completion-map-case}}{132}
|
||||
\entry{\code {completion-prefix-display-length}}{132}
|
||||
\entry{\code {completion-query-items}}{133}
|
||||
\entry{\code {completion-display-width}}{133}
|
||||
\entry{\code {completion-ignore-case}}{133}
|
||||
\entry{\code {completion-map-case}}{133}
|
||||
\entry{\code {completion-prefix-display-length}}{133}
|
||||
\entry{\code {completion-query-items}}{134}
|
||||
\entry{\code {COMPREPLY}}{89}
|
||||
\entry{\code {convert-meta}}{133}
|
||||
\entry{\code {convert-meta}}{134}
|
||||
\entry{\code {COPROC}}{89}
|
||||
\initial {D}
|
||||
\entry{\code {DIRSTACK}}{89}
|
||||
\entry{\code {disable-completion}}{133}
|
||||
\entry{\code {disable-completion}}{134}
|
||||
\initial {E}
|
||||
\entry{\code {echo-control-characters}}{133}
|
||||
\entry{\code {editing-mode}}{133}
|
||||
\entry{\code {emacs-mode-string}}{133}
|
||||
\entry{\code {echo-control-characters}}{134}
|
||||
\entry{\code {editing-mode}}{134}
|
||||
\entry{\code {emacs-mode-string}}{134}
|
||||
\entry{\code {EMACS}}{89}
|
||||
\entry{\code {enable-active-region The}}{134}
|
||||
\entry{\code {enable-bracketed-paste}}{134}
|
||||
\entry{\code {enable-keypad}}{134}
|
||||
\entry{\code {enable-meta-key}}{134}
|
||||
\entry{\code {enable-active-region The}}{135}
|
||||
\entry{\code {enable-bracketed-paste}}{135}
|
||||
\entry{\code {enable-keypad}}{135}
|
||||
\entry{\code {enable-meta-key}}{135}
|
||||
\entry{\code {ENV}}{89}
|
||||
\entry{\code {EPOCHREALTIME}}{90}
|
||||
\entry{\code {EPOCHSECONDS}}{90}
|
||||
\entry{\code {EUID}}{90}
|
||||
\entry{\code {EXECIGNORE}}{90}
|
||||
\entry{\code {expand-tilde}}{134}
|
||||
\entry{\code {expand-tilde}}{135}
|
||||
\initial {F}
|
||||
\entry{\code {FCEDIT}}{90}
|
||||
\entry{\code {FIGNORE}}{90}
|
||||
\entry{\code {force-meta-prefix}}{134}
|
||||
\entry{\code {force-meta-prefix}}{135}
|
||||
\entry{\code {FUNCNAME}}{90}
|
||||
\entry{\code {FUNCNEST}}{90}
|
||||
\initial {G}
|
||||
@@ -112,24 +112,24 @@
|
||||
\entry{\code {HISTFILE}}{92}
|
||||
\entry{\code {HISTFILESIZE}}{92}
|
||||
\entry{\code {HISTIGNORE}}{92}
|
||||
\entry{\code {history-preserve-point}}{135}
|
||||
\entry{\code {history-size}}{135}
|
||||
\entry{\code {history-preserve-point}}{136}
|
||||
\entry{\code {history-size}}{136}
|
||||
\entry{\code {HISTSIZE}}{92}
|
||||
\entry{\code {HISTTIMEFORMAT}}{93}
|
||||
\entry{\code {HOME}}{84}
|
||||
\entry{\code {horizontal-scroll-mode}}{135}
|
||||
\entry{\code {horizontal-scroll-mode}}{136}
|
||||
\entry{\code {HOSTFILE}}{93}
|
||||
\entry{\code {HOSTNAME}}{93}
|
||||
\entry{\code {HOSTTYPE}}{93}
|
||||
\initial {I}
|
||||
\entry{\code {IFS}}{84}
|
||||
\entry{\code {IGNOREEOF}}{93}
|
||||
\entry{\code {input-meta}}{135}
|
||||
\entry{\code {input-meta}}{136}
|
||||
\entry{\code {INPUTRC}}{93}
|
||||
\entry{\code {INSIDE_EMACS}}{93}
|
||||
\entry{\code {isearch-terminators}}{135}
|
||||
\entry{\code {isearch-terminators}}{136}
|
||||
\initial {K}
|
||||
\entry{\code {keymap}}{135}
|
||||
\entry{\code {keymap}}{136}
|
||||
\initial {L}
|
||||
\entry{\code {LANG}}{8, 93}
|
||||
\entry{\code {LC_ALL}}{93}
|
||||
@@ -146,20 +146,20 @@
|
||||
\entry{\code {MAILCHECK}}{94}
|
||||
\entry{\code {MAILPATH}}{84}
|
||||
\entry{\code {MAPFILE}}{94}
|
||||
\entry{\code {mark-modified-lines}}{136}
|
||||
\entry{\code {mark-symlinked-directories}}{136}
|
||||
\entry{\code {match-hidden-files}}{136}
|
||||
\entry{\code {menu-complete-display-prefix}}{136}
|
||||
\entry{\code {meta-flag}}{135}
|
||||
\entry{\code {mark-modified-lines}}{137}
|
||||
\entry{\code {mark-symlinked-directories}}{137}
|
||||
\entry{\code {match-hidden-files}}{137}
|
||||
\entry{\code {menu-complete-display-prefix}}{137}
|
||||
\entry{\code {meta-flag}}{136}
|
||||
\initial {O}
|
||||
\entry{\code {OLDPWD}}{94}
|
||||
\entry{\code {OPTARG}}{84}
|
||||
\entry{\code {OPTERR}}{94}
|
||||
\entry{\code {OPTIND}}{84}
|
||||
\entry{\code {OSTYPE}}{94}
|
||||
\entry{\code {output-meta}}{136}
|
||||
\entry{\code {output-meta}}{137}
|
||||
\initial {P}
|
||||
\entry{\code {page-completions}}{136}
|
||||
\entry{\code {page-completions}}{137}
|
||||
\entry{\code {PATH}}{84}
|
||||
\entry{\code {PIPESTATUS}}{94}
|
||||
\entry{\code {POSIXLY_CORRECT}}{94}
|
||||
@@ -179,17 +179,17 @@
|
||||
\entry{\code {READLINE_MARK}}{95}
|
||||
\entry{\code {READLINE_POINT}}{95}
|
||||
\entry{\code {REPLY}}{95}
|
||||
\entry{\code {revert-all-at-newline}}{137}
|
||||
\entry{\code {revert-all-at-newline}}{138}
|
||||
\initial {S}
|
||||
\entry{\code {search-ignore-case}}{137}
|
||||
\entry{\code {search-ignore-case}}{138}
|
||||
\entry{\code {SECONDS}}{95}
|
||||
\entry{\code {SHELL}}{96}
|
||||
\entry{\code {SHELLOPTS}}{96}
|
||||
\entry{\code {SHLVL}}{96}
|
||||
\entry{\code {show-all-if-ambiguous}}{137}
|
||||
\entry{\code {show-all-if-unmodified}}{137}
|
||||
\entry{\code {show-mode-in-prompt}}{137}
|
||||
\entry{\code {skip-completed-text}}{137}
|
||||
\entry{\code {show-all-if-ambiguous}}{138}
|
||||
\entry{\code {show-all-if-unmodified}}{138}
|
||||
\entry{\code {show-mode-in-prompt}}{138}
|
||||
\entry{\code {skip-completed-text}}{138}
|
||||
\entry{\code {SRANDOM}}{96}
|
||||
\initial {T}
|
||||
\entry{\code {TEXTDOMAIN}}{8}
|
||||
@@ -200,6 +200,6 @@
|
||||
\initial {U}
|
||||
\entry{\code {UID}}{97}
|
||||
\initial {V}
|
||||
\entry{\code {vi-cmd-mode-string}}{137}
|
||||
\entry{\code {vi-ins-mode-string}}{138}
|
||||
\entry{\code {visible-stats}}{138}
|
||||
\entry{\code {vi-cmd-mode-string}}{138}
|
||||
\entry{\code {vi-ins-mode-string}}{139}
|
||||
\entry{\code {visible-stats}}{139}
|
||||
|
||||
+634
-628
File diff suppressed because it is too large
Load Diff
+2
-2
@@ -2,10 +2,10 @@
|
||||
Copyright (C) 1988-2024 Free Software Foundation, Inc.
|
||||
@end ignore
|
||||
|
||||
@set LASTCHANGE Thu Oct 10 10:31:59 EDT 2024
|
||||
@set LASTCHANGE Mon Oct 14 11:41:52 EDT 2024
|
||||
|
||||
@set EDITION 5.3
|
||||
@set VERSION 5.3
|
||||
|
||||
@set UPDATED 10 October 2024
|
||||
@set UPDATED 14 October 2024
|
||||
@set UPDATED-MONTH October 2024
|
||||
|
||||
@@ -3455,6 +3455,7 @@ wait_for_any_job (int flags, struct procstat *ps)
|
||||
pid_t pid;
|
||||
int i, r;
|
||||
sigset_t set, oset;
|
||||
struct pidstat *t;
|
||||
PROCESS *p, *child;
|
||||
|
||||
/* Allow funsubs to run this, but don't remove jobs from the jobs table. */
|
||||
@@ -3479,11 +3480,7 @@ return_job:
|
||||
}
|
||||
if (jobs_list_frozen == 0) /* must be running a funsub to get here */
|
||||
{
|
||||
#if 1
|
||||
notify_of_job_status (i); /* XXX */
|
||||
#else
|
||||
maybe_print_job_notifications (i);
|
||||
#endif
|
||||
|
||||
/* kre@munnari.oz.au 01/30/2024 */
|
||||
delete_job (i, posixly_correct ? DEL_NOBGPID : 0);
|
||||
@@ -3535,6 +3532,23 @@ return_procsub:
|
||||
}
|
||||
#endif
|
||||
|
||||
/* There aren't any dead jobs in the jobs table, but let's see if there's
|
||||
one in bgpids. We can do this in posix mode because we'll remove any
|
||||
one we find from the table, preserving existing semantics. */
|
||||
if (posixly_correct && (t = bgp_findone ()))
|
||||
{
|
||||
pid = t->pid;
|
||||
r = t->status;
|
||||
if (ps)
|
||||
{
|
||||
ps->pid = pid;
|
||||
ps->status = r;
|
||||
}
|
||||
bgp_delete (pid);
|
||||
UNBLOCK_CHILD (oset);
|
||||
return r;
|
||||
}
|
||||
|
||||
UNBLOCK_CHILD (oset);
|
||||
|
||||
/* At this point, we have no dead jobs in the jobs table. Wait until we
|
||||
@@ -3577,26 +3591,8 @@ return_procsub:
|
||||
|
||||
if (i == js.j_jobslots && p == NULL)
|
||||
{
|
||||
/* Ok, the job table is empty. If we're in posix mode, we can look
|
||||
in the bgpids table because we will remove the pid we find and
|
||||
this won't change existing semantics. Otherwise, we return
|
||||
failure as before. */
|
||||
struct pidstat *t;
|
||||
|
||||
r = -1;
|
||||
if (posixly_correct && (t = bgp_findone ()))
|
||||
{
|
||||
pid = t->pid;
|
||||
r = t->status;
|
||||
if (ps)
|
||||
{
|
||||
ps->pid = pid;
|
||||
ps->status = r;
|
||||
}
|
||||
bgp_delete (pid);
|
||||
}
|
||||
UNBLOCK_CHILD (oset);
|
||||
return r;
|
||||
return -1;
|
||||
}
|
||||
|
||||
UNBLOCK_CHILD (oset);
|
||||
@@ -3943,7 +3939,12 @@ start_job (int job, int foreground)
|
||||
}
|
||||
else
|
||||
{
|
||||
#if 0
|
||||
/* XXX TAG:bash-5.4 */
|
||||
set_current_job (job);
|
||||
#else
|
||||
reset_current ();
|
||||
#endif
|
||||
UNBLOCK_CHILD (oset);
|
||||
return (0);
|
||||
}
|
||||
|
||||
@@ -205,7 +205,7 @@ Key bindings may contain the following symbolic character names:
|
||||
.IR NEWLINE ,
|
||||
.IR RET ,
|
||||
.IR RETURN ,
|
||||
.IR RUBOUT ,
|
||||
.IR RUBOUT (a destructive backspace),
|
||||
.IR SPACE ,
|
||||
.IR SPC ,
|
||||
and
|
||||
@@ -1170,6 +1170,7 @@ Delete the character at point.
|
||||
If this function is bound to the
|
||||
same character as the tty \fBEOF\fP character, as \fBC\-d\fP
|
||||
commonly is, see above for the effects.
|
||||
This may also be bound to the Delete key on some keyboards.
|
||||
.TP
|
||||
.B backward\-delete\-char (Rubout)
|
||||
Delete the character behind the cursor.
|
||||
|
||||
@@ -971,7 +971,7 @@ This key binding syntax recognizes a number of symbolic character names:
|
||||
@var{NEWLINE},
|
||||
@var{RET},
|
||||
@var{RETURN},
|
||||
@var{RUBOUT},
|
||||
@var{RUBOUT} (a destructive backspace),
|
||||
@var{SPACE},
|
||||
@var{SPC},
|
||||
and
|
||||
@@ -1528,6 +1528,7 @@ Delete the character at point.
|
||||
If this function is bound to the
|
||||
same character as the tty @sc{eof} character, as @kbd{C-d}
|
||||
commonly is, see above for the effects.
|
||||
This may also be bound to the Delete key on some keyboards.
|
||||
|
||||
@item backward-delete-char (Rubout)
|
||||
Delete the character behind the cursor.
|
||||
|
||||
@@ -5,7 +5,7 @@ Copyright (C) 1988-2024 Free Software Foundation, Inc.
|
||||
@set EDITION 8.3
|
||||
@set VERSION 8.3
|
||||
|
||||
@set UPDATED 10 October 2024
|
||||
@set UPDATED 14 October 2024
|
||||
@set UPDATED-MONTH October 2024
|
||||
|
||||
@set LASTCHANGE Thu Oct 10 16:33:55 EDT 2024
|
||||
@set LASTCHANGE Mon Oct 14 11:42:19 EDT 2024
|
||||
|
||||
Reference in New Issue
Block a user