mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-06-27 07:43:07 +02:00
commit bash-20200131 snapshot
This commit is contained in:
@@ -7234,3 +7234,30 @@ lib/readline/bind.c
|
||||
- rl_invoking_keyseqs_in_map: make sure to consistently output
|
||||
backslash as `\\' instead of producing `\C-\'
|
||||
Fixes from Koichi Murase <myoga.murase@gmail.com>
|
||||
|
||||
1/29
|
||||
----
|
||||
bashline.c
|
||||
- readline_get_char_offset: translate a readline buffer offset
|
||||
(rl_point, rl_mark, rl_end) into a number of (possibly multibyte)
|
||||
characters
|
||||
- readline_set_char_offset: translate a number of (possibly multibyte)
|
||||
characters into a buffer offset in rl_line_buffer. Uses a private
|
||||
readline function to do it, which is bad
|
||||
- bash_execute_unix_command: use readline_{get,set}_char_offset to
|
||||
translate the rl_point to a character offset
|
||||
- bash_execute_unix_command: bind READLINE_MARK variable, exposing
|
||||
the value of rl_mark to `bind -x' functions
|
||||
|
||||
1/31
|
||||
----
|
||||
examples/loadables/accept.c
|
||||
- accept: new loadable builtin that will accept a TCP connection on a
|
||||
specified port. Inspired by Stan Marsh <gazelle@xmission.com>
|
||||
|
||||
2/1
|
||||
---
|
||||
lib/readline/histfile.c
|
||||
- history_do_write,history_truncate_file: translate the return value rv
|
||||
to errno when histfile_restore returns -1 (e.g., if rename() fails).
|
||||
Report and fix from A <auroralanes@protonmail.ch>
|
||||
|
||||
@@ -710,6 +710,7 @@ examples/loadables/Makefile.in f
|
||||
examples/loadables/Makefile.inc.in f
|
||||
examples/loadables/necho.c f
|
||||
examples/loadables/hello.c f
|
||||
examples/loadables/accept.c f
|
||||
examples/loadables/print.c f
|
||||
examples/loadables/realpath.c f
|
||||
examples/loadables/seq.c f
|
||||
|
||||
+59
-31
@@ -197,6 +197,8 @@ static void putx PARAMS((int));
|
||||
#else
|
||||
static int putx PARAMS((int));
|
||||
#endif
|
||||
static int readline_get_char_offset PARAMS((int));
|
||||
static void readline_set_char_offset PARAMS((int, int *));
|
||||
|
||||
static Keymap get_cmd_xmap_from_edit_mode PARAMS((void));
|
||||
static Keymap get_cmd_xmap_from_keymap PARAMS((Keymap));
|
||||
@@ -4286,7 +4288,49 @@ putx(c)
|
||||
return x;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
readline_get_char_offset (ind)
|
||||
int ind;
|
||||
{
|
||||
int r, old_ch;
|
||||
|
||||
r = ind;
|
||||
#if defined (HANDLE_MULTIBYTE)
|
||||
if (locale_mb_cur_max > 1)
|
||||
{
|
||||
old_ch = rl_line_buffer[ind];
|
||||
rl_line_buffer[ind] = '\0';
|
||||
r = MB_STRLEN (rl_line_buffer);
|
||||
rl_line_buffer[ind] = old_ch;
|
||||
}
|
||||
#endif
|
||||
return r;
|
||||
}
|
||||
|
||||
static void
|
||||
readline_set_char_offset (ind, varp)
|
||||
int ind;
|
||||
int *varp;
|
||||
{
|
||||
int i;
|
||||
|
||||
i = ind;
|
||||
|
||||
#if defined (HANDLE_MULTIBYTE)
|
||||
if (i > 0 && locale_mb_cur_max > 1)
|
||||
i = _rl_find_next_mbchar (rl_line_buffer, 0, i, 0); /* XXX */
|
||||
#endif
|
||||
if (i != *varp)
|
||||
{
|
||||
if (i > rl_end)
|
||||
i = rl_end;
|
||||
else if (i < 0)
|
||||
i = 0;
|
||||
*varp = i;
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
bash_execute_unix_command (count, key)
|
||||
int count; /* ignored */
|
||||
@@ -4321,12 +4365,7 @@ bash_execute_unix_command (count, key)
|
||||
ce = rl_get_termcap ("ce");
|
||||
if (ce) /* clear current line */
|
||||
{
|
||||
#if 0
|
||||
fprintf (rl_outstream, "\r");
|
||||
tputs (ce, 1, putx);
|
||||
#else
|
||||
rl_clear_visible_line ();
|
||||
#endif
|
||||
fflush (rl_outstream);
|
||||
}
|
||||
else
|
||||
@@ -4335,18 +4374,16 @@ bash_execute_unix_command (count, key)
|
||||
v = bind_variable ("READLINE_LINE", rl_line_buffer, 0);
|
||||
if (v)
|
||||
VSETATTR (v, att_exported);
|
||||
i = rl_point;
|
||||
#if defined (HANDLE_MULTIBYTE)
|
||||
if (MB_CUR_MAX > 1)
|
||||
{
|
||||
old_ch = rl_line_buffer[rl_point];
|
||||
rl_line_buffer[rl_point] = '\0';
|
||||
i = MB_STRLEN (rl_line_buffer);
|
||||
rl_line_buffer[rl_point] = old_ch;
|
||||
}
|
||||
#endif
|
||||
|
||||
i = readline_get_char_offset (rl_point);
|
||||
value = inttostr (i, ibuf, sizeof (ibuf));
|
||||
v = bind_int_variable ("READLINE_POINT", value, 0);
|
||||
if (v)
|
||||
VSETATTR (v, att_exported);
|
||||
|
||||
i = readline_get_char_offset (rl_mark);
|
||||
value = inttostr (i, ibuf, sizeof (ibuf));
|
||||
v = bind_int_variable ("READLINE_MARK", value, 0);
|
||||
if (v)
|
||||
VSETATTR (v, att_exported);
|
||||
array_needs_making = 1;
|
||||
@@ -4360,24 +4397,15 @@ bash_execute_unix_command (count, key)
|
||||
|
||||
v = find_variable ("READLINE_POINT");
|
||||
if (v && legal_number (value_cell (v), &mi))
|
||||
{
|
||||
i = mi;
|
||||
#if defined (HANDLE_MULTIBYTE)
|
||||
if (i > 0 && MB_CUR_MAX > 1)
|
||||
i = _rl_find_next_mbchar (rl_line_buffer, 0, i, 0);
|
||||
#endif
|
||||
if (i != rl_point)
|
||||
{
|
||||
rl_point = i;
|
||||
if (rl_point > rl_end)
|
||||
rl_point = rl_end;
|
||||
else if (rl_point < 0)
|
||||
rl_point = 0;
|
||||
}
|
||||
}
|
||||
readline_set_char_offset (mi, &rl_point);
|
||||
|
||||
v = find_variable ("READLINE_MARK");
|
||||
if (v && legal_number (value_cell (v), &mi))
|
||||
readline_set_char_offset (mi, &rl_mark);
|
||||
|
||||
check_unbind_variable ("READLINE_LINE");
|
||||
check_unbind_variable ("READLINE_POINT");
|
||||
check_unbind_variable ("READLINE_MARK");
|
||||
array_needs_making = 1;
|
||||
|
||||
/* and restore the readline buffer and display after command execution. */
|
||||
|
||||
+1434
-1428
File diff suppressed because it is too large
Load Diff
+27
-8
@@ -5,12 +5,12 @@
|
||||
.\" Case Western Reserve University
|
||||
.\" chet.ramey@case.edu
|
||||
.\"
|
||||
.\" Last Change: Tue Nov 26 11:15:17 EST 2019
|
||||
.\" Last Change: Wed Jan 29 14:00:16 EST 2020
|
||||
.\"
|
||||
.\" bash_builtins, strip all but Built-Ins section
|
||||
.if \n(zZ=1 .ig zZ
|
||||
.if \n(zY=1 .ig zY
|
||||
.TH BASH 1 "2019 November 26" "GNU Bash 5.0"
|
||||
.TH BASH 1 "2020 January 29" "GNU Bash 5.0"
|
||||
.\"
|
||||
.\" There's some problem with having a `@'
|
||||
.\" in a tagged paragraph with the BSD man macros.
|
||||
@@ -50,8 +50,8 @@ bash \- GNU Bourne-Again SHell
|
||||
[options]
|
||||
[command_string | file]
|
||||
.SH COPYRIGHT
|
||||
.if n Bash is Copyright (C) 1989-2019 by the Free Software Foundation, Inc.
|
||||
.if t Bash is Copyright \(co 1989-2019 by the Free Software Foundation, Inc.
|
||||
.if n Bash is Copyright (C) 1989-2020 by the Free Software Foundation, Inc.
|
||||
.if t Bash is Copyright \(co 1989-2020 by the Free Software Foundation, Inc.
|
||||
.SH DESCRIPTION
|
||||
.B Bash
|
||||
is an \fBsh\fR-compatible command language interpreter that
|
||||
@@ -1938,6 +1938,19 @@ line buffer, for use with
|
||||
.B "SHELL BUILTIN COMMANDS"
|
||||
below).
|
||||
.TP
|
||||
.B READLINE_MARK
|
||||
The position of the mark (saved insertion point) in the
|
||||
.B readline
|
||||
line buffer, for use with
|
||||
.if t \f(CWbind -x\fP
|
||||
.if n "bind -x"
|
||||
(see
|
||||
.SM
|
||||
.B "SHELL BUILTIN COMMANDS"
|
||||
below).
|
||||
The characters between the insertion point and the mark are often
|
||||
called the \fIregion\fP.
|
||||
.TP
|
||||
.B READLINE_POINT
|
||||
The position of the insertion point in the
|
||||
.B readline
|
||||
@@ -7548,13 +7561,19 @@ When \fIshell\-command\fP is executed, the shell sets the
|
||||
variable to the contents of the \fBreadline\fP line buffer and the
|
||||
.SM
|
||||
.B READLINE_POINT
|
||||
variable to the current location of the insertion point.
|
||||
If the executed command changes the value of
|
||||
and
|
||||
.SM
|
||||
.B READLINE_LINE
|
||||
or
|
||||
.B READLINE_MARK
|
||||
variables to the current location of the insertion point and the saved
|
||||
insertion point (the mark), respectively.
|
||||
If the executed command changes the value of any of
|
||||
.SM
|
||||
.BR READLINE_LINE ,
|
||||
.SM
|
||||
.BR READLINE_POINT ,
|
||||
or
|
||||
.SM
|
||||
.BR READLINE_MARK ,
|
||||
those new values will be reflected in the editing state.
|
||||
.TP
|
||||
.B \-X
|
||||
|
||||
+32
-8
@@ -3,7 +3,7 @@
|
||||
</HEAD>
|
||||
<BODY><TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2019 November 26<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2020 January 29<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<BR><A HREF="#index">Index</A>
|
||||
@@ -54,7 +54,7 @@ bash - GNU Bourne-Again SHell
|
||||
<H3>COPYRIGHT</H3>
|
||||
|
||||
|
||||
Bash is Copyright © 1989-2019 by the Free Software Foundation, Inc.
|
||||
Bash is Copyright © 1989-2020 by the Free Software Foundation, Inc.
|
||||
<A NAME="lbAE"> </A>
|
||||
<H3>DESCRIPTION</H3>
|
||||
|
||||
@@ -2472,6 +2472,22 @@ line buffer, for use with
|
||||
|
||||
</FONT>
|
||||
below).
|
||||
<DT><B>READLINE_MARK</B>
|
||||
|
||||
<DD>
|
||||
The position of the mark (saved insertion point) in the
|
||||
<B>readline</B>
|
||||
|
||||
line buffer, for use with
|
||||
<TT>bind -x</TT>
|
||||
|
||||
(see
|
||||
<FONT SIZE=-1><B>SHELL BUILTIN COMMANDS</B>
|
||||
|
||||
</FONT>
|
||||
below).
|
||||
The characters between the insertion point and the mark are often
|
||||
called the <I>region</I>.
|
||||
<DT><B>READLINE_POINT</B>
|
||||
|
||||
<DD>
|
||||
@@ -9635,13 +9651,21 @@ variable to the contents of the <B>readline</B> line buffer and the
|
||||
<FONT SIZE=-1><B>READLINE_POINT</B>
|
||||
|
||||
</FONT>
|
||||
variable to the current location of the insertion point.
|
||||
If the executed command changes the value of
|
||||
<FONT SIZE=-1><B>READLINE_LINE</B>
|
||||
and
|
||||
<FONT SIZE=-1><B>READLINE_MARK</B>
|
||||
|
||||
</FONT>
|
||||
variables to the current location of the insertion point and the saved
|
||||
insertion point (the mark), respectively.
|
||||
If the executed command changes the value of any of
|
||||
<FONT SIZE=-1><B>READLINE_LINE</B>,
|
||||
|
||||
</FONT>
|
||||
<FONT SIZE=-1><B>READLINE_POINT</B>,
|
||||
|
||||
</FONT>
|
||||
or
|
||||
<FONT SIZE=-1><B>READLINE_POINT</B>,
|
||||
<FONT SIZE=-1><B>READLINE_MARK</B>,
|
||||
|
||||
</FONT>
|
||||
those new values will be reflected in the editing state.
|
||||
@@ -14044,7 +14068,7 @@ There may be only one active coprocess at a time.
|
||||
<HR>
|
||||
<TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.0<TH ALIGN=CENTER width=33%>2019 November 26<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.0<TH ALIGN=CENTER width=33%>2020 January 29<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<HR>
|
||||
@@ -14150,6 +14174,6 @@ There may be only one active coprocess at a time.
|
||||
</DL>
|
||||
<HR>
|
||||
This document was created by man2html from bash.1.<BR>
|
||||
Time: 06 January 2020 08:53:48 EST
|
||||
Time: 29 January 2020 14:04:26 EST
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
||||
+176
-167
@@ -2,9 +2,9 @@ This is bash.info, produced by makeinfo version 6.7 from
|
||||
bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 26 November 2019).
|
||||
Bash shell (version 5.0, 29 January 2020).
|
||||
|
||||
This is Edition 5.0, last updated 26 November 2019, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 29 January 2020, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Copyright (C) 1988-2018 Free Software Foundation, Inc.
|
||||
@@ -27,10 +27,10 @@ Bash Features
|
||||
*************
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 26 November 2019). The Bash home page is
|
||||
Bash shell (version 5.0, 29 January 2020). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.0, last updated 26 November 2019, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 29 January 2020, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -3427,10 +3427,12 @@ standard.
|
||||
Cause SHELL-COMMAND to be executed whenever KEYSEQ is entered.
|
||||
When SHELL-COMMAND is executed, the shell sets the
|
||||
'READLINE_LINE' variable to the contents of the Readline line
|
||||
buffer and the 'READLINE_POINT' variable to the current
|
||||
location of the insertion point. If the executed command
|
||||
changes the value of 'READLINE_LINE' or 'READLINE_POINT',
|
||||
those new values will be reflected in the editing state.
|
||||
buffer and the 'READLINE_POINT' and 'READLINE_MARK' variables
|
||||
to the current location of the insertion point and the saved
|
||||
insertion point (the MARK), respectively. If the executed
|
||||
command changes the value of any of 'READLINE_LINE',
|
||||
'READLINE_POINT', or 'READLINE_MARK', those new values will be
|
||||
reflected in the editing state.
|
||||
|
||||
'-X'
|
||||
List all key sequences bound to shell commands and the
|
||||
@@ -5448,6 +5450,12 @@ Variables::).
|
||||
The contents of the Readline line buffer, for use with 'bind -x'
|
||||
(*note Bash Builtins::).
|
||||
|
||||
'READLINE_MARK'
|
||||
The position of the MARK (saved insertion point) in the Readline
|
||||
line buffer, for use with 'bind -x' (*note Bash Builtins::). The
|
||||
characters between the insertion point and the mark are often
|
||||
called the REGION.
|
||||
|
||||
'READLINE_POINT'
|
||||
The position of the insertion point in the Readline line buffer,
|
||||
for use with 'bind -x' (*note Bash Builtins::).
|
||||
@@ -11052,11 +11060,11 @@ D.1 Index of Shell Builtin Commands
|
||||
* bind: Bash Builtins. (line 21)
|
||||
* break: Bourne Shell Builtins.
|
||||
(line 36)
|
||||
* builtin: Bash Builtins. (line 102)
|
||||
* caller: Bash Builtins. (line 111)
|
||||
* builtin: Bash Builtins. (line 104)
|
||||
* caller: Bash Builtins. (line 113)
|
||||
* cd: Bourne Shell Builtins.
|
||||
(line 44)
|
||||
* command: Bash Builtins. (line 128)
|
||||
* command: Bash Builtins. (line 130)
|
||||
* compgen: Programmable Completion Builtins.
|
||||
(line 12)
|
||||
* complete: Programmable Completion Builtins.
|
||||
@@ -11065,13 +11073,13 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 237)
|
||||
* continue: Bourne Shell Builtins.
|
||||
(line 85)
|
||||
* declare: Bash Builtins. (line 148)
|
||||
* declare: Bash Builtins. (line 150)
|
||||
* dirs: Directory Stack Builtins.
|
||||
(line 7)
|
||||
* disown: Job Control Builtins.
|
||||
(line 97)
|
||||
* echo: Bash Builtins. (line 246)
|
||||
* enable: Bash Builtins. (line 295)
|
||||
* echo: Bash Builtins. (line 248)
|
||||
* enable: Bash Builtins. (line 297)
|
||||
* eval: Bourne Shell Builtins.
|
||||
(line 94)
|
||||
* exec: Bourne Shell Builtins.
|
||||
@@ -11088,26 +11096,26 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 143)
|
||||
* hash: Bourne Shell Builtins.
|
||||
(line 187)
|
||||
* help: Bash Builtins. (line 324)
|
||||
* help: Bash Builtins. (line 326)
|
||||
* history: Bash History Builtins.
|
||||
(line 40)
|
||||
* jobs: Job Control Builtins.
|
||||
(line 27)
|
||||
* kill: Job Control Builtins.
|
||||
(line 58)
|
||||
* let: Bash Builtins. (line 343)
|
||||
* local: Bash Builtins. (line 351)
|
||||
* logout: Bash Builtins. (line 365)
|
||||
* mapfile: Bash Builtins. (line 370)
|
||||
* let: Bash Builtins. (line 345)
|
||||
* local: Bash Builtins. (line 353)
|
||||
* logout: Bash Builtins. (line 367)
|
||||
* mapfile: Bash Builtins. (line 372)
|
||||
* popd: Directory Stack Builtins.
|
||||
(line 35)
|
||||
* printf: Bash Builtins. (line 416)
|
||||
* printf: Bash Builtins. (line 418)
|
||||
* pushd: Directory Stack Builtins.
|
||||
(line 53)
|
||||
* pwd: Bourne Shell Builtins.
|
||||
(line 207)
|
||||
* read: Bash Builtins. (line 460)
|
||||
* readarray: Bash Builtins. (line 554)
|
||||
* read: Bash Builtins. (line 462)
|
||||
* readarray: Bash Builtins. (line 556)
|
||||
* readonly: Bourne Shell Builtins.
|
||||
(line 217)
|
||||
* return: Bourne Shell Builtins.
|
||||
@@ -11116,7 +11124,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* shift: Bourne Shell Builtins.
|
||||
(line 257)
|
||||
* shopt: The Shopt Builtin. (line 9)
|
||||
* source: Bash Builtins. (line 563)
|
||||
* source: Bash Builtins. (line 565)
|
||||
* suspend: Job Control Builtins.
|
||||
(line 109)
|
||||
* test: Bourne Shell Builtins.
|
||||
@@ -11125,12 +11133,12 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 349)
|
||||
* trap: Bourne Shell Builtins.
|
||||
(line 355)
|
||||
* type: Bash Builtins. (line 568)
|
||||
* typeset: Bash Builtins. (line 600)
|
||||
* ulimit: Bash Builtins. (line 606)
|
||||
* type: Bash Builtins. (line 570)
|
||||
* typeset: Bash Builtins. (line 602)
|
||||
* ulimit: Bash Builtins. (line 608)
|
||||
* umask: Bourne Shell Builtins.
|
||||
(line 404)
|
||||
* unalias: Bash Builtins. (line 705)
|
||||
* unalias: Bash Builtins. (line 707)
|
||||
* unset: Bourne Shell Builtins.
|
||||
(line 422)
|
||||
* wait: Job Control Builtins.
|
||||
@@ -11376,14 +11384,15 @@ D.3 Parameter and Variable Index
|
||||
* PWD: Bash Variables. (line 598)
|
||||
* RANDOM: Bash Variables. (line 601)
|
||||
* READLINE_LINE: Bash Variables. (line 607)
|
||||
* READLINE_POINT: Bash Variables. (line 611)
|
||||
* REPLY: Bash Variables. (line 615)
|
||||
* READLINE_MARK: Bash Variables. (line 611)
|
||||
* READLINE_POINT: Bash Variables. (line 617)
|
||||
* REPLY: Bash Variables. (line 621)
|
||||
* revert-all-at-newline: Readline Init File Syntax.
|
||||
(line 272)
|
||||
* SECONDS: Bash Variables. (line 618)
|
||||
* SHELL: Bash Variables. (line 625)
|
||||
* SHELLOPTS: Bash Variables. (line 630)
|
||||
* SHLVL: Bash Variables. (line 639)
|
||||
* SECONDS: Bash Variables. (line 624)
|
||||
* SHELL: Bash Variables. (line 631)
|
||||
* SHELLOPTS: Bash Variables. (line 636)
|
||||
* SHLVL: Bash Variables. (line 645)
|
||||
* show-all-if-ambiguous: Readline Init File Syntax.
|
||||
(line 278)
|
||||
* show-all-if-unmodified: Readline Init File Syntax.
|
||||
@@ -11392,13 +11401,13 @@ D.3 Parameter and Variable Index
|
||||
(line 293)
|
||||
* skip-completed-text: Readline Init File Syntax.
|
||||
(line 299)
|
||||
* SRANDOM: Bash Variables. (line 644)
|
||||
* SRANDOM: Bash Variables. (line 650)
|
||||
* TEXTDOMAIN: Locale Translation. (line 11)
|
||||
* TEXTDOMAINDIR: Locale Translation. (line 11)
|
||||
* TIMEFORMAT: Bash Variables. (line 653)
|
||||
* TMOUT: Bash Variables. (line 691)
|
||||
* TMPDIR: Bash Variables. (line 703)
|
||||
* UID: Bash Variables. (line 707)
|
||||
* TIMEFORMAT: Bash Variables. (line 659)
|
||||
* TMOUT: Bash Variables. (line 697)
|
||||
* TMPDIR: Bash Variables. (line 709)
|
||||
* UID: Bash Variables. (line 713)
|
||||
* vi-cmd-mode-string: Readline Init File Syntax.
|
||||
(line 312)
|
||||
* vi-ins-mode-string: Readline Init File Syntax.
|
||||
@@ -11769,135 +11778,135 @@ D.5 Concept Index
|
||||
|
||||
|
||||
Tag Table:
|
||||
Node: Top897
|
||||
Node: Introduction2817
|
||||
Node: What is Bash?3033
|
||||
Node: What is a shell?4147
|
||||
Node: Definitions6685
|
||||
Node: Basic Shell Features9636
|
||||
Node: Shell Syntax10855
|
||||
Node: Shell Operation11881
|
||||
Node: Quoting13174
|
||||
Node: Escape Character14474
|
||||
Node: Single Quotes14959
|
||||
Node: Double Quotes15307
|
||||
Node: ANSI-C Quoting16585
|
||||
Node: Locale Translation17844
|
||||
Node: Comments18740
|
||||
Node: Shell Commands19358
|
||||
Node: Simple Commands20230
|
||||
Node: Pipelines20861
|
||||
Node: Lists23793
|
||||
Node: Compound Commands25584
|
||||
Node: Looping Constructs26596
|
||||
Node: Conditional Constructs29091
|
||||
Node: Command Grouping40662
|
||||
Node: Coprocesses42141
|
||||
Node: GNU Parallel44044
|
||||
Node: Shell Functions48345
|
||||
Node: Shell Parameters55552
|
||||
Node: Positional Parameters59965
|
||||
Node: Special Parameters60865
|
||||
Node: Shell Expansions64089
|
||||
Node: Brace Expansion66212
|
||||
Node: Tilde Expansion68935
|
||||
Node: Shell Parameter Expansion71552
|
||||
Node: Command Substitution85985
|
||||
Node: Arithmetic Expansion87340
|
||||
Node: Process Substitution88272
|
||||
Node: Word Splitting89392
|
||||
Node: Filename Expansion91336
|
||||
Node: Pattern Matching93885
|
||||
Node: Quote Removal97871
|
||||
Node: Redirections98166
|
||||
Node: Executing Commands107724
|
||||
Node: Simple Command Expansion108394
|
||||
Node: Command Search and Execution110348
|
||||
Node: Command Execution Environment112724
|
||||
Node: Environment115708
|
||||
Node: Exit Status117367
|
||||
Node: Signals119037
|
||||
Node: Shell Scripts121004
|
||||
Node: Shell Builtin Commands124016
|
||||
Node: Bourne Shell Builtins126054
|
||||
Node: Bash Builtins146978
|
||||
Node: Modifying Shell Behavior175903
|
||||
Node: The Set Builtin176248
|
||||
Node: The Shopt Builtin186661
|
||||
Node: Special Builtins204331
|
||||
Node: Shell Variables205310
|
||||
Node: Bourne Shell Variables205747
|
||||
Node: Bash Variables207851
|
||||
Node: Bash Features239793
|
||||
Node: Invoking Bash240692
|
||||
Node: Bash Startup Files246705
|
||||
Node: Interactive Shells251808
|
||||
Node: What is an Interactive Shell?252218
|
||||
Node: Is this Shell Interactive?252867
|
||||
Node: Interactive Shell Behavior253682
|
||||
Node: Bash Conditional Expressions257169
|
||||
Node: Shell Arithmetic261746
|
||||
Node: Aliases264686
|
||||
Node: Arrays267306
|
||||
Node: The Directory Stack272671
|
||||
Node: Directory Stack Builtins273455
|
||||
Node: Controlling the Prompt276423
|
||||
Node: The Restricted Shell279344
|
||||
Node: Bash POSIX Mode281826
|
||||
Node: Job Control292713
|
||||
Node: Job Control Basics293173
|
||||
Node: Job Control Builtins298137
|
||||
Node: Job Control Variables303283
|
||||
Node: Command Line Editing304439
|
||||
Node: Introduction and Notation306110
|
||||
Node: Readline Interaction307733
|
||||
Node: Readline Bare Essentials308924
|
||||
Node: Readline Movement Commands310707
|
||||
Node: Readline Killing Commands311667
|
||||
Node: Readline Arguments313585
|
||||
Node: Searching314629
|
||||
Node: Readline Init File316815
|
||||
Node: Readline Init File Syntax318074
|
||||
Node: Conditional Init Constructs338604
|
||||
Node: Sample Init File342800
|
||||
Node: Bindable Readline Commands345917
|
||||
Node: Commands For Moving347121
|
||||
Node: Commands For History348980
|
||||
Node: Commands For Text353275
|
||||
Node: Commands For Killing356663
|
||||
Node: Numeric Arguments359478
|
||||
Node: Commands For Completion360617
|
||||
Node: Keyboard Macros364808
|
||||
Node: Miscellaneous Commands365495
|
||||
Node: Readline vi Mode371448
|
||||
Node: Programmable Completion372355
|
||||
Node: Programmable Completion Builtins380135
|
||||
Node: A Programmable Completion Example390830
|
||||
Node: Using History Interactively396077
|
||||
Node: Bash History Facilities396761
|
||||
Node: Bash History Builtins399766
|
||||
Node: History Interaction404298
|
||||
Node: Event Designators407918
|
||||
Node: Word Designators409272
|
||||
Node: Modifiers411032
|
||||
Node: Installing Bash412843
|
||||
Node: Basic Installation413980
|
||||
Node: Compilers and Options417238
|
||||
Node: Compiling For Multiple Architectures417979
|
||||
Node: Installation Names419672
|
||||
Node: Specifying the System Type420490
|
||||
Node: Sharing Defaults421206
|
||||
Node: Operation Controls421879
|
||||
Node: Optional Features422837
|
||||
Node: Reporting Bugs433355
|
||||
Node: Major Differences From The Bourne Shell434549
|
||||
Node: GNU Free Documentation License451401
|
||||
Node: Indexes476578
|
||||
Node: Builtin Index477032
|
||||
Node: Reserved Word Index483859
|
||||
Node: Variable Index486307
|
||||
Node: Function Index502131
|
||||
Node: Concept Index515570
|
||||
Node: Top895
|
||||
Node: Introduction2813
|
||||
Node: What is Bash?3029
|
||||
Node: What is a shell?4143
|
||||
Node: Definitions6681
|
||||
Node: Basic Shell Features9632
|
||||
Node: Shell Syntax10851
|
||||
Node: Shell Operation11877
|
||||
Node: Quoting13170
|
||||
Node: Escape Character14470
|
||||
Node: Single Quotes14955
|
||||
Node: Double Quotes15303
|
||||
Node: ANSI-C Quoting16581
|
||||
Node: Locale Translation17840
|
||||
Node: Comments18736
|
||||
Node: Shell Commands19354
|
||||
Node: Simple Commands20226
|
||||
Node: Pipelines20857
|
||||
Node: Lists23789
|
||||
Node: Compound Commands25580
|
||||
Node: Looping Constructs26592
|
||||
Node: Conditional Constructs29087
|
||||
Node: Command Grouping40658
|
||||
Node: Coprocesses42137
|
||||
Node: GNU Parallel44040
|
||||
Node: Shell Functions48341
|
||||
Node: Shell Parameters55548
|
||||
Node: Positional Parameters59961
|
||||
Node: Special Parameters60861
|
||||
Node: Shell Expansions64085
|
||||
Node: Brace Expansion66208
|
||||
Node: Tilde Expansion68931
|
||||
Node: Shell Parameter Expansion71548
|
||||
Node: Command Substitution85981
|
||||
Node: Arithmetic Expansion87336
|
||||
Node: Process Substitution88268
|
||||
Node: Word Splitting89388
|
||||
Node: Filename Expansion91332
|
||||
Node: Pattern Matching93881
|
||||
Node: Quote Removal97867
|
||||
Node: Redirections98162
|
||||
Node: Executing Commands107720
|
||||
Node: Simple Command Expansion108390
|
||||
Node: Command Search and Execution110344
|
||||
Node: Command Execution Environment112720
|
||||
Node: Environment115704
|
||||
Node: Exit Status117363
|
||||
Node: Signals119033
|
||||
Node: Shell Scripts121000
|
||||
Node: Shell Builtin Commands124012
|
||||
Node: Bourne Shell Builtins126050
|
||||
Node: Bash Builtins146974
|
||||
Node: Modifying Shell Behavior176020
|
||||
Node: The Set Builtin176365
|
||||
Node: The Shopt Builtin186778
|
||||
Node: Special Builtins204448
|
||||
Node: Shell Variables205427
|
||||
Node: Bourne Shell Variables205864
|
||||
Node: Bash Variables207968
|
||||
Node: Bash Features240159
|
||||
Node: Invoking Bash241058
|
||||
Node: Bash Startup Files247071
|
||||
Node: Interactive Shells252174
|
||||
Node: What is an Interactive Shell?252584
|
||||
Node: Is this Shell Interactive?253233
|
||||
Node: Interactive Shell Behavior254048
|
||||
Node: Bash Conditional Expressions257535
|
||||
Node: Shell Arithmetic262112
|
||||
Node: Aliases265052
|
||||
Node: Arrays267672
|
||||
Node: The Directory Stack273037
|
||||
Node: Directory Stack Builtins273821
|
||||
Node: Controlling the Prompt276789
|
||||
Node: The Restricted Shell279710
|
||||
Node: Bash POSIX Mode282192
|
||||
Node: Job Control293079
|
||||
Node: Job Control Basics293539
|
||||
Node: Job Control Builtins298503
|
||||
Node: Job Control Variables303649
|
||||
Node: Command Line Editing304805
|
||||
Node: Introduction and Notation306476
|
||||
Node: Readline Interaction308099
|
||||
Node: Readline Bare Essentials309290
|
||||
Node: Readline Movement Commands311073
|
||||
Node: Readline Killing Commands312033
|
||||
Node: Readline Arguments313951
|
||||
Node: Searching314995
|
||||
Node: Readline Init File317181
|
||||
Node: Readline Init File Syntax318440
|
||||
Node: Conditional Init Constructs338970
|
||||
Node: Sample Init File343166
|
||||
Node: Bindable Readline Commands346283
|
||||
Node: Commands For Moving347487
|
||||
Node: Commands For History349346
|
||||
Node: Commands For Text353641
|
||||
Node: Commands For Killing357029
|
||||
Node: Numeric Arguments359844
|
||||
Node: Commands For Completion360983
|
||||
Node: Keyboard Macros365174
|
||||
Node: Miscellaneous Commands365861
|
||||
Node: Readline vi Mode371814
|
||||
Node: Programmable Completion372721
|
||||
Node: Programmable Completion Builtins380501
|
||||
Node: A Programmable Completion Example391196
|
||||
Node: Using History Interactively396443
|
||||
Node: Bash History Facilities397127
|
||||
Node: Bash History Builtins400132
|
||||
Node: History Interaction404664
|
||||
Node: Event Designators408284
|
||||
Node: Word Designators409638
|
||||
Node: Modifiers411398
|
||||
Node: Installing Bash413209
|
||||
Node: Basic Installation414346
|
||||
Node: Compilers and Options417604
|
||||
Node: Compiling For Multiple Architectures418345
|
||||
Node: Installation Names420038
|
||||
Node: Specifying the System Type420856
|
||||
Node: Sharing Defaults421572
|
||||
Node: Operation Controls422245
|
||||
Node: Optional Features423203
|
||||
Node: Reporting Bugs433721
|
||||
Node: Major Differences From The Bourne Shell434915
|
||||
Node: GNU Free Documentation License451767
|
||||
Node: Indexes476944
|
||||
Node: Builtin Index477398
|
||||
Node: Reserved Word Index484225
|
||||
Node: Variable Index486673
|
||||
Node: Function Index502570
|
||||
Node: Concept Index516009
|
||||
|
||||
End Tag Table
|
||||
|
||||
|
||||
Binary file not shown.
+5278
-5296
File diff suppressed because it is too large
Load Diff
Binary file not shown.
+21
-9
@@ -1,9 +1,9 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<!-- This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.0, 26 November 2019).
|
||||
the Bash shell (version 5.0, 29 January 2020).
|
||||
|
||||
This is Edition 5.0, last updated 26 November 2019,
|
||||
This is Edition 5.0, last updated 29 January 2020,
|
||||
of The GNU Bash Reference Manual,
|
||||
for Bash, Version 5.0.
|
||||
|
||||
@@ -273,10 +273,10 @@ Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previou
|
||||
<span id="Bash-Features-1"></span><h1 class="top">Bash Features</h1>
|
||||
|
||||
<p>This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.0, 26 November 2019).
|
||||
the Bash shell (version 5.0, 29 January 2020).
|
||||
The Bash home page is <a href="http://www.gnu.org/software/bash/">http://www.gnu.org/software/bash/</a>.
|
||||
</p>
|
||||
<p>This is Edition 5.0, last updated 26 November 2019,
|
||||
<p>This is Edition 5.0, last updated 29 January 2020,
|
||||
of <cite>The GNU Bash Reference Manual</cite>,
|
||||
for <code>Bash</code>, Version 5.0.
|
||||
</p>
|
||||
@@ -4619,11 +4619,12 @@ initialization file.
|
||||
entered.
|
||||
When <var>shell-command</var> is executed, the shell sets the
|
||||
<code>READLINE_LINE</code> variable to the contents of the Readline line
|
||||
buffer and the <code>READLINE_POINT</code> variable to the current location
|
||||
of the insertion point.
|
||||
If the executed command changes the value of <code>READLINE_LINE</code> or
|
||||
<code>READLINE_POINT</code>, those new values will be reflected in the
|
||||
editing state.
|
||||
buffer and the <code>READLINE_POINT</code> and <code>READLINE_MARK</code> variables
|
||||
to the current location of the insertion point and the saved insertion
|
||||
point (the <var>mark</var>), respectively.
|
||||
If the executed command changes the value of any of <code>READLINE_LINE</code>,
|
||||
<code>READLINE_POINT</code>, or <code>READLINE_MARK</code>, those new values will be
|
||||
reflected in the editing state.
|
||||
</p>
|
||||
</dd>
|
||||
<dt><code>-X</code></dt>
|
||||
@@ -7368,6 +7369,16 @@ subsequently reset.
|
||||
with ‘<samp>bind -x</samp>’ (see <a href="#Bash-Builtins">Bash Builtins</a>).
|
||||
</p>
|
||||
</dd>
|
||||
<dt><code>READLINE_MARK</code>
|
||||
<span id="index-READLINE_005fMARK"></span>
|
||||
</dt>
|
||||
<dd><p>The position of the <var>mark</var> (saved insertion point) in the
|
||||
Readline line buffer, for use
|
||||
with ‘<samp>bind -x</samp>’ (see <a href="#Bash-Builtins">Bash Builtins</a>).
|
||||
The characters between the insertion point and the mark are often
|
||||
called the <var>region</var>.
|
||||
</p>
|
||||
</dd>
|
||||
<dt><code>READLINE_POINT</code>
|
||||
<span id="index-READLINE_005fPOINT"></span>
|
||||
</dt>
|
||||
@@ -14995,6 +15006,7 @@ Next: <a href="#Function-Index" accesskey="n" rel="next">Function Index</a>, Pre
|
||||
<tr><th id="Variable-Index_vr_letter-R">R</th><td></td><td></td></tr>
|
||||
<tr><td></td><td valign="top"><a href="#index-RANDOM"><code>RANDOM</code></a>:</td><td> </td><td valign="top"><a href="#Bash-Variables">Bash Variables</a></td></tr>
|
||||
<tr><td></td><td valign="top"><a href="#index-READLINE_005fLINE"><code>READLINE_LINE</code></a>:</td><td> </td><td valign="top"><a href="#Bash-Variables">Bash Variables</a></td></tr>
|
||||
<tr><td></td><td valign="top"><a href="#index-READLINE_005fMARK"><code>READLINE_MARK</code></a>:</td><td> </td><td valign="top"><a href="#Bash-Variables">Bash Variables</a></td></tr>
|
||||
<tr><td></td><td valign="top"><a href="#index-READLINE_005fPOINT"><code>READLINE_POINT</code></a>:</td><td> </td><td valign="top"><a href="#Bash-Variables">Bash Variables</a></td></tr>
|
||||
<tr><td></td><td valign="top"><a href="#index-REPLY"><code>REPLY</code></a>:</td><td> </td><td valign="top"><a href="#Bash-Variables">Bash Variables</a></td></tr>
|
||||
<tr><td></td><td valign="top"><a href="#index-revert_002dall_002dat_002dnewline"><code>revert-all-at-newline</code></a>:</td><td> </td><td valign="top"><a href="#Readline-Init-File-Syntax">Readline Init File Syntax</a></td></tr>
|
||||
|
||||
+176
-167
@@ -2,9 +2,9 @@ This is bashref.info, produced by makeinfo version 6.7 from
|
||||
bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 26 November 2019).
|
||||
Bash shell (version 5.0, 29 January 2020).
|
||||
|
||||
This is Edition 5.0, last updated 26 November 2019, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 29 January 2020, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Copyright (C) 1988-2018 Free Software Foundation, Inc.
|
||||
@@ -27,10 +27,10 @@ Bash Features
|
||||
*************
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 26 November 2019). The Bash home page is
|
||||
Bash shell (version 5.0, 29 January 2020). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.0, last updated 26 November 2019, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 29 January 2020, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -3427,10 +3427,12 @@ standard.
|
||||
Cause SHELL-COMMAND to be executed whenever KEYSEQ is entered.
|
||||
When SHELL-COMMAND is executed, the shell sets the
|
||||
'READLINE_LINE' variable to the contents of the Readline line
|
||||
buffer and the 'READLINE_POINT' variable to the current
|
||||
location of the insertion point. If the executed command
|
||||
changes the value of 'READLINE_LINE' or 'READLINE_POINT',
|
||||
those new values will be reflected in the editing state.
|
||||
buffer and the 'READLINE_POINT' and 'READLINE_MARK' variables
|
||||
to the current location of the insertion point and the saved
|
||||
insertion point (the MARK), respectively. If the executed
|
||||
command changes the value of any of 'READLINE_LINE',
|
||||
'READLINE_POINT', or 'READLINE_MARK', those new values will be
|
||||
reflected in the editing state.
|
||||
|
||||
'-X'
|
||||
List all key sequences bound to shell commands and the
|
||||
@@ -5448,6 +5450,12 @@ Variables::).
|
||||
The contents of the Readline line buffer, for use with 'bind -x'
|
||||
(*note Bash Builtins::).
|
||||
|
||||
'READLINE_MARK'
|
||||
The position of the MARK (saved insertion point) in the Readline
|
||||
line buffer, for use with 'bind -x' (*note Bash Builtins::). The
|
||||
characters between the insertion point and the mark are often
|
||||
called the REGION.
|
||||
|
||||
'READLINE_POINT'
|
||||
The position of the insertion point in the Readline line buffer,
|
||||
for use with 'bind -x' (*note Bash Builtins::).
|
||||
@@ -11052,11 +11060,11 @@ D.1 Index of Shell Builtin Commands
|
||||
* bind: Bash Builtins. (line 21)
|
||||
* break: Bourne Shell Builtins.
|
||||
(line 36)
|
||||
* builtin: Bash Builtins. (line 102)
|
||||
* caller: Bash Builtins. (line 111)
|
||||
* builtin: Bash Builtins. (line 104)
|
||||
* caller: Bash Builtins. (line 113)
|
||||
* cd: Bourne Shell Builtins.
|
||||
(line 44)
|
||||
* command: Bash Builtins. (line 128)
|
||||
* command: Bash Builtins. (line 130)
|
||||
* compgen: Programmable Completion Builtins.
|
||||
(line 12)
|
||||
* complete: Programmable Completion Builtins.
|
||||
@@ -11065,13 +11073,13 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 237)
|
||||
* continue: Bourne Shell Builtins.
|
||||
(line 85)
|
||||
* declare: Bash Builtins. (line 148)
|
||||
* declare: Bash Builtins. (line 150)
|
||||
* dirs: Directory Stack Builtins.
|
||||
(line 7)
|
||||
* disown: Job Control Builtins.
|
||||
(line 97)
|
||||
* echo: Bash Builtins. (line 246)
|
||||
* enable: Bash Builtins. (line 295)
|
||||
* echo: Bash Builtins. (line 248)
|
||||
* enable: Bash Builtins. (line 297)
|
||||
* eval: Bourne Shell Builtins.
|
||||
(line 94)
|
||||
* exec: Bourne Shell Builtins.
|
||||
@@ -11088,26 +11096,26 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 143)
|
||||
* hash: Bourne Shell Builtins.
|
||||
(line 187)
|
||||
* help: Bash Builtins. (line 324)
|
||||
* help: Bash Builtins. (line 326)
|
||||
* history: Bash History Builtins.
|
||||
(line 40)
|
||||
* jobs: Job Control Builtins.
|
||||
(line 27)
|
||||
* kill: Job Control Builtins.
|
||||
(line 58)
|
||||
* let: Bash Builtins. (line 343)
|
||||
* local: Bash Builtins. (line 351)
|
||||
* logout: Bash Builtins. (line 365)
|
||||
* mapfile: Bash Builtins. (line 370)
|
||||
* let: Bash Builtins. (line 345)
|
||||
* local: Bash Builtins. (line 353)
|
||||
* logout: Bash Builtins. (line 367)
|
||||
* mapfile: Bash Builtins. (line 372)
|
||||
* popd: Directory Stack Builtins.
|
||||
(line 35)
|
||||
* printf: Bash Builtins. (line 416)
|
||||
* printf: Bash Builtins. (line 418)
|
||||
* pushd: Directory Stack Builtins.
|
||||
(line 53)
|
||||
* pwd: Bourne Shell Builtins.
|
||||
(line 207)
|
||||
* read: Bash Builtins. (line 460)
|
||||
* readarray: Bash Builtins. (line 554)
|
||||
* read: Bash Builtins. (line 462)
|
||||
* readarray: Bash Builtins. (line 556)
|
||||
* readonly: Bourne Shell Builtins.
|
||||
(line 217)
|
||||
* return: Bourne Shell Builtins.
|
||||
@@ -11116,7 +11124,7 @@ D.1 Index of Shell Builtin Commands
|
||||
* shift: Bourne Shell Builtins.
|
||||
(line 257)
|
||||
* shopt: The Shopt Builtin. (line 9)
|
||||
* source: Bash Builtins. (line 563)
|
||||
* source: Bash Builtins. (line 565)
|
||||
* suspend: Job Control Builtins.
|
||||
(line 109)
|
||||
* test: Bourne Shell Builtins.
|
||||
@@ -11125,12 +11133,12 @@ D.1 Index of Shell Builtin Commands
|
||||
(line 349)
|
||||
* trap: Bourne Shell Builtins.
|
||||
(line 355)
|
||||
* type: Bash Builtins. (line 568)
|
||||
* typeset: Bash Builtins. (line 600)
|
||||
* ulimit: Bash Builtins. (line 606)
|
||||
* type: Bash Builtins. (line 570)
|
||||
* typeset: Bash Builtins. (line 602)
|
||||
* ulimit: Bash Builtins. (line 608)
|
||||
* umask: Bourne Shell Builtins.
|
||||
(line 404)
|
||||
* unalias: Bash Builtins. (line 705)
|
||||
* unalias: Bash Builtins. (line 707)
|
||||
* unset: Bourne Shell Builtins.
|
||||
(line 422)
|
||||
* wait: Job Control Builtins.
|
||||
@@ -11376,14 +11384,15 @@ D.3 Parameter and Variable Index
|
||||
* PWD: Bash Variables. (line 598)
|
||||
* RANDOM: Bash Variables. (line 601)
|
||||
* READLINE_LINE: Bash Variables. (line 607)
|
||||
* READLINE_POINT: Bash Variables. (line 611)
|
||||
* REPLY: Bash Variables. (line 615)
|
||||
* READLINE_MARK: Bash Variables. (line 611)
|
||||
* READLINE_POINT: Bash Variables. (line 617)
|
||||
* REPLY: Bash Variables. (line 621)
|
||||
* revert-all-at-newline: Readline Init File Syntax.
|
||||
(line 272)
|
||||
* SECONDS: Bash Variables. (line 618)
|
||||
* SHELL: Bash Variables. (line 625)
|
||||
* SHELLOPTS: Bash Variables. (line 630)
|
||||
* SHLVL: Bash Variables. (line 639)
|
||||
* SECONDS: Bash Variables. (line 624)
|
||||
* SHELL: Bash Variables. (line 631)
|
||||
* SHELLOPTS: Bash Variables. (line 636)
|
||||
* SHLVL: Bash Variables. (line 645)
|
||||
* show-all-if-ambiguous: Readline Init File Syntax.
|
||||
(line 278)
|
||||
* show-all-if-unmodified: Readline Init File Syntax.
|
||||
@@ -11392,13 +11401,13 @@ D.3 Parameter and Variable Index
|
||||
(line 293)
|
||||
* skip-completed-text: Readline Init File Syntax.
|
||||
(line 299)
|
||||
* SRANDOM: Bash Variables. (line 644)
|
||||
* SRANDOM: Bash Variables. (line 650)
|
||||
* TEXTDOMAIN: Locale Translation. (line 11)
|
||||
* TEXTDOMAINDIR: Locale Translation. (line 11)
|
||||
* TIMEFORMAT: Bash Variables. (line 653)
|
||||
* TMOUT: Bash Variables. (line 691)
|
||||
* TMPDIR: Bash Variables. (line 703)
|
||||
* UID: Bash Variables. (line 707)
|
||||
* TIMEFORMAT: Bash Variables. (line 659)
|
||||
* TMOUT: Bash Variables. (line 697)
|
||||
* TMPDIR: Bash Variables. (line 709)
|
||||
* UID: Bash Variables. (line 713)
|
||||
* vi-cmd-mode-string: Readline Init File Syntax.
|
||||
(line 312)
|
||||
* vi-ins-mode-string: Readline Init File Syntax.
|
||||
@@ -11769,135 +11778,135 @@ D.5 Concept Index
|
||||
|
||||
|
||||
Tag Table:
|
||||
Node: Top897
|
||||
Node: Introduction2817
|
||||
Node: What is Bash?3033
|
||||
Node: What is a shell?4147
|
||||
Node: Definitions6685
|
||||
Node: Basic Shell Features9636
|
||||
Node: Shell Syntax10855
|
||||
Node: Shell Operation11881
|
||||
Node: Quoting13174
|
||||
Node: Escape Character14474
|
||||
Node: Single Quotes14959
|
||||
Node: Double Quotes15307
|
||||
Node: ANSI-C Quoting16585
|
||||
Node: Locale Translation17844
|
||||
Node: Comments18740
|
||||
Node: Shell Commands19358
|
||||
Node: Simple Commands20230
|
||||
Node: Pipelines20861
|
||||
Node: Lists23793
|
||||
Node: Compound Commands25584
|
||||
Node: Looping Constructs26596
|
||||
Node: Conditional Constructs29091
|
||||
Node: Command Grouping40662
|
||||
Node: Coprocesses42141
|
||||
Node: GNU Parallel44044
|
||||
Node: Shell Functions48345
|
||||
Node: Shell Parameters55552
|
||||
Node: Positional Parameters59965
|
||||
Node: Special Parameters60865
|
||||
Node: Shell Expansions64089
|
||||
Node: Brace Expansion66212
|
||||
Node: Tilde Expansion68935
|
||||
Node: Shell Parameter Expansion71552
|
||||
Node: Command Substitution85985
|
||||
Node: Arithmetic Expansion87340
|
||||
Node: Process Substitution88272
|
||||
Node: Word Splitting89392
|
||||
Node: Filename Expansion91336
|
||||
Node: Pattern Matching93885
|
||||
Node: Quote Removal97871
|
||||
Node: Redirections98166
|
||||
Node: Executing Commands107724
|
||||
Node: Simple Command Expansion108394
|
||||
Node: Command Search and Execution110348
|
||||
Node: Command Execution Environment112724
|
||||
Node: Environment115708
|
||||
Node: Exit Status117367
|
||||
Node: Signals119037
|
||||
Node: Shell Scripts121004
|
||||
Node: Shell Builtin Commands124016
|
||||
Node: Bourne Shell Builtins126054
|
||||
Node: Bash Builtins146978
|
||||
Node: Modifying Shell Behavior175903
|
||||
Node: The Set Builtin176248
|
||||
Node: The Shopt Builtin186661
|
||||
Node: Special Builtins204331
|
||||
Node: Shell Variables205310
|
||||
Node: Bourne Shell Variables205747
|
||||
Node: Bash Variables207851
|
||||
Node: Bash Features239793
|
||||
Node: Invoking Bash240692
|
||||
Node: Bash Startup Files246705
|
||||
Node: Interactive Shells251808
|
||||
Node: What is an Interactive Shell?252218
|
||||
Node: Is this Shell Interactive?252867
|
||||
Node: Interactive Shell Behavior253682
|
||||
Node: Bash Conditional Expressions257169
|
||||
Node: Shell Arithmetic261746
|
||||
Node: Aliases264686
|
||||
Node: Arrays267306
|
||||
Node: The Directory Stack272671
|
||||
Node: Directory Stack Builtins273455
|
||||
Node: Controlling the Prompt276423
|
||||
Node: The Restricted Shell279344
|
||||
Node: Bash POSIX Mode281826
|
||||
Node: Job Control292713
|
||||
Node: Job Control Basics293173
|
||||
Node: Job Control Builtins298137
|
||||
Node: Job Control Variables303283
|
||||
Node: Command Line Editing304439
|
||||
Node: Introduction and Notation306110
|
||||
Node: Readline Interaction307733
|
||||
Node: Readline Bare Essentials308924
|
||||
Node: Readline Movement Commands310707
|
||||
Node: Readline Killing Commands311667
|
||||
Node: Readline Arguments313585
|
||||
Node: Searching314629
|
||||
Node: Readline Init File316815
|
||||
Node: Readline Init File Syntax318074
|
||||
Node: Conditional Init Constructs338604
|
||||
Node: Sample Init File342800
|
||||
Node: Bindable Readline Commands345917
|
||||
Node: Commands For Moving347121
|
||||
Node: Commands For History348980
|
||||
Node: Commands For Text353275
|
||||
Node: Commands For Killing356663
|
||||
Node: Numeric Arguments359478
|
||||
Node: Commands For Completion360617
|
||||
Node: Keyboard Macros364808
|
||||
Node: Miscellaneous Commands365495
|
||||
Node: Readline vi Mode371448
|
||||
Node: Programmable Completion372355
|
||||
Node: Programmable Completion Builtins380135
|
||||
Node: A Programmable Completion Example390830
|
||||
Node: Using History Interactively396077
|
||||
Node: Bash History Facilities396761
|
||||
Node: Bash History Builtins399766
|
||||
Node: History Interaction404298
|
||||
Node: Event Designators407918
|
||||
Node: Word Designators409272
|
||||
Node: Modifiers411032
|
||||
Node: Installing Bash412843
|
||||
Node: Basic Installation413980
|
||||
Node: Compilers and Options417238
|
||||
Node: Compiling For Multiple Architectures417979
|
||||
Node: Installation Names419672
|
||||
Node: Specifying the System Type420490
|
||||
Node: Sharing Defaults421206
|
||||
Node: Operation Controls421879
|
||||
Node: Optional Features422837
|
||||
Node: Reporting Bugs433355
|
||||
Node: Major Differences From The Bourne Shell434549
|
||||
Node: GNU Free Documentation License451401
|
||||
Node: Indexes476578
|
||||
Node: Builtin Index477032
|
||||
Node: Reserved Word Index483859
|
||||
Node: Variable Index486307
|
||||
Node: Function Index502131
|
||||
Node: Concept Index515570
|
||||
Node: Top895
|
||||
Node: Introduction2813
|
||||
Node: What is Bash?3029
|
||||
Node: What is a shell?4143
|
||||
Node: Definitions6681
|
||||
Node: Basic Shell Features9632
|
||||
Node: Shell Syntax10851
|
||||
Node: Shell Operation11877
|
||||
Node: Quoting13170
|
||||
Node: Escape Character14470
|
||||
Node: Single Quotes14955
|
||||
Node: Double Quotes15303
|
||||
Node: ANSI-C Quoting16581
|
||||
Node: Locale Translation17840
|
||||
Node: Comments18736
|
||||
Node: Shell Commands19354
|
||||
Node: Simple Commands20226
|
||||
Node: Pipelines20857
|
||||
Node: Lists23789
|
||||
Node: Compound Commands25580
|
||||
Node: Looping Constructs26592
|
||||
Node: Conditional Constructs29087
|
||||
Node: Command Grouping40658
|
||||
Node: Coprocesses42137
|
||||
Node: GNU Parallel44040
|
||||
Node: Shell Functions48341
|
||||
Node: Shell Parameters55548
|
||||
Node: Positional Parameters59961
|
||||
Node: Special Parameters60861
|
||||
Node: Shell Expansions64085
|
||||
Node: Brace Expansion66208
|
||||
Node: Tilde Expansion68931
|
||||
Node: Shell Parameter Expansion71548
|
||||
Node: Command Substitution85981
|
||||
Node: Arithmetic Expansion87336
|
||||
Node: Process Substitution88268
|
||||
Node: Word Splitting89388
|
||||
Node: Filename Expansion91332
|
||||
Node: Pattern Matching93881
|
||||
Node: Quote Removal97867
|
||||
Node: Redirections98162
|
||||
Node: Executing Commands107720
|
||||
Node: Simple Command Expansion108390
|
||||
Node: Command Search and Execution110344
|
||||
Node: Command Execution Environment112720
|
||||
Node: Environment115704
|
||||
Node: Exit Status117363
|
||||
Node: Signals119033
|
||||
Node: Shell Scripts121000
|
||||
Node: Shell Builtin Commands124012
|
||||
Node: Bourne Shell Builtins126050
|
||||
Node: Bash Builtins146974
|
||||
Node: Modifying Shell Behavior176020
|
||||
Node: The Set Builtin176365
|
||||
Node: The Shopt Builtin186778
|
||||
Node: Special Builtins204448
|
||||
Node: Shell Variables205427
|
||||
Node: Bourne Shell Variables205864
|
||||
Node: Bash Variables207968
|
||||
Node: Bash Features240159
|
||||
Node: Invoking Bash241058
|
||||
Node: Bash Startup Files247071
|
||||
Node: Interactive Shells252174
|
||||
Node: What is an Interactive Shell?252584
|
||||
Node: Is this Shell Interactive?253233
|
||||
Node: Interactive Shell Behavior254048
|
||||
Node: Bash Conditional Expressions257535
|
||||
Node: Shell Arithmetic262112
|
||||
Node: Aliases265052
|
||||
Node: Arrays267672
|
||||
Node: The Directory Stack273037
|
||||
Node: Directory Stack Builtins273821
|
||||
Node: Controlling the Prompt276789
|
||||
Node: The Restricted Shell279710
|
||||
Node: Bash POSIX Mode282192
|
||||
Node: Job Control293079
|
||||
Node: Job Control Basics293539
|
||||
Node: Job Control Builtins298503
|
||||
Node: Job Control Variables303649
|
||||
Node: Command Line Editing304805
|
||||
Node: Introduction and Notation306476
|
||||
Node: Readline Interaction308099
|
||||
Node: Readline Bare Essentials309290
|
||||
Node: Readline Movement Commands311073
|
||||
Node: Readline Killing Commands312033
|
||||
Node: Readline Arguments313951
|
||||
Node: Searching314995
|
||||
Node: Readline Init File317181
|
||||
Node: Readline Init File Syntax318440
|
||||
Node: Conditional Init Constructs338970
|
||||
Node: Sample Init File343166
|
||||
Node: Bindable Readline Commands346283
|
||||
Node: Commands For Moving347487
|
||||
Node: Commands For History349346
|
||||
Node: Commands For Text353641
|
||||
Node: Commands For Killing357029
|
||||
Node: Numeric Arguments359844
|
||||
Node: Commands For Completion360983
|
||||
Node: Keyboard Macros365174
|
||||
Node: Miscellaneous Commands365861
|
||||
Node: Readline vi Mode371814
|
||||
Node: Programmable Completion372721
|
||||
Node: Programmable Completion Builtins380501
|
||||
Node: A Programmable Completion Example391196
|
||||
Node: Using History Interactively396443
|
||||
Node: Bash History Facilities397127
|
||||
Node: Bash History Builtins400132
|
||||
Node: History Interaction404664
|
||||
Node: Event Designators408284
|
||||
Node: Word Designators409638
|
||||
Node: Modifiers411398
|
||||
Node: Installing Bash413209
|
||||
Node: Basic Installation414346
|
||||
Node: Compilers and Options417604
|
||||
Node: Compiling For Multiple Architectures418345
|
||||
Node: Installation Names420038
|
||||
Node: Specifying the System Type420856
|
||||
Node: Sharing Defaults421572
|
||||
Node: Operation Controls422245
|
||||
Node: Optional Features423203
|
||||
Node: Reporting Bugs433721
|
||||
Node: Major Differences From The Bourne Shell434915
|
||||
Node: GNU Free Documentation License451767
|
||||
Node: Indexes476944
|
||||
Node: Builtin Index477398
|
||||
Node: Reserved Word Index484225
|
||||
Node: Variable Index486673
|
||||
Node: Function Index502570
|
||||
Node: Concept Index516009
|
||||
|
||||
End Tag Table
|
||||
|
||||
|
||||
+5
-18
@@ -1,4 +1,4 @@
|
||||
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/MacPorts 2019.50896_1) (preloaded format=pdfetex 2019.11.6) 17 JAN 2020 11:15
|
||||
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/MacPorts 2019.50896_1) (preloaded format=pdfetex 2019.11.6) 29 JAN 2020 14:04
|
||||
entering extended mode
|
||||
restricted \write18 enabled.
|
||||
file:line:error style messages enabled.
|
||||
@@ -269,24 +269,11 @@ texinfo.tex: doing @include of fdl.texi
|
||||
|
||||
(/Users/chet/src/bash/src/doc/fdl.texi [165] [166]
|
||||
[167] [168] [169] [170] [171]) Appendix D [172] [173] [174] [175] [176]
|
||||
Overfull \vbox (0.67252pt too high) has occurred while \output is active
|
||||
\vbox(340.17245+0.0)x207.80492
|
||||
.\glue(\topskip) 0.0
|
||||
.\hbox(9.87999+0.0)x207.80492, glue set 197.20078fil
|
||||
..\kern -0.46252
|
||||
..\secrm P
|
||||
..\glue 0.0 plus 1.0fil minus 1.0fil
|
||||
.\penalty 10000
|
||||
.\glue 3.46501 plus 1.05006
|
||||
.\glue 0.0 plus 0.5
|
||||
.etc.
|
||||
|
||||
|
||||
[177] [178] [179] [180] [181] )
|
||||
Here is how much of TeX's memory you used:
|
||||
4069 strings out of 497098
|
||||
47090 string characters out of 6206772
|
||||
137084 words of memory out of 5000000
|
||||
137494 words of memory out of 5000000
|
||||
4848 multiletter control sequences out of 15000+600000
|
||||
34315 words of font info for 116 fonts, out of 8000000 for 9000
|
||||
51 hyphenation exceptions out of 8191
|
||||
@@ -308,10 +295,10 @@ s/type1/public/amsfonts/cm/cmtt12.pfb></opt/local/share/texmf-texlive/fonts/typ
|
||||
e1/public/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texlive/fonts/type1/pub
|
||||
lic/cm-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fonts/type1/public/cm
|
||||
-super/sfrm1440.pfb>
|
||||
Output written on bashref.pdf (187 pages, 759156 bytes).
|
||||
Output written on bashref.pdf (187 pages, 759734 bytes).
|
||||
PDF statistics:
|
||||
2644 PDF objects out of 2984 (max. 8388607)
|
||||
2411 compressed objects within 25 object streams
|
||||
2646 PDF objects out of 2984 (max. 8388607)
|
||||
2413 compressed objects within 25 object streams
|
||||
313 named destinations out of 1000 (max. 500000)
|
||||
1125 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||
|
||||
|
||||
Binary file not shown.
+256
-243
@@ -1,7 +1,7 @@
|
||||
%!PS-Adobe-2.0
|
||||
%%Creator: dvips(k) 5.999 Copyright 2019 Radical Eye Software
|
||||
%%Title: bashref.dvi
|
||||
%%CreationDate: Fri Jan 17 16:15:33 2020
|
||||
%%CreationDate: Wed Jan 29 19:04:22 2020
|
||||
%%Pages: 187
|
||||
%%PageOrder: Ascend
|
||||
%%BoundingBox: 0 0 612 792
|
||||
@@ -12,7 +12,7 @@
|
||||
%DVIPSWebPage: (www.radicaleye.com)
|
||||
%DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi
|
||||
%DVIPSParameters: dpi=600
|
||||
%DVIPSSource: TeX output 2020.01.17:1115
|
||||
%DVIPSSource: TeX output 2020.01.29:1404
|
||||
%%BeginProcSet: tex.pro 0 0
|
||||
%!
|
||||
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
|
||||
@@ -7638,22 +7638,22 @@ ifelse
|
||||
TeXDict begin 1 0 bop 150 1318 a Fv(Bash)64 b(Reference)j(Man)-5
|
||||
b(ual)p 150 1385 3600 34 v 2361 1481 a Fu(Reference)31
|
||||
b(Do)s(cumen)m(tation)i(for)d(Bash)2428 1589 y(Edition)h(5.0,)g(for)f
|
||||
Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.0.)3139 1697 y(No)m(v)m(em)m(b)s(er)g
|
||||
(2019)150 4927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11
|
||||
b(estern)46 b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068
|
||||
y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
|
||||
Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.0.)3218 1697 y(Jan)m(uary)f(2020)150
|
||||
4927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46
|
||||
b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068 y(Brian)f(F)-11
|
||||
b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
|
||||
b(oundation)p 150 5141 3600 17 v eop end
|
||||
%%Page: 2 2
|
||||
TeXDict begin 2 1 bop 150 4279 a Fu(This)35 b(text)h(is)g(a)g(brief)f
|
||||
(description)h(of)f(the)h(features)g(that)g(are)g(presen)m(t)g(in)f
|
||||
(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.0,)c(26)f(No)m(v)m(em)m
|
||||
(b)s(er)g(2019\).)150 4523 y(This)e(is)i(Edition)f(5.0,)h(last)g(up)s
|
||||
(dated)e(26)i(No)m(v)m(em)m(b)s(er)h(2019,)g(of)e Fr(The)g(GNU)h(Bash)f
|
||||
(Reference)h(Man)m(ual)p Fu(,)150 4633 y(for)f Ft(Bash)p
|
||||
Fu(,)g(V)-8 b(ersion)31 b(5.0.)150 4767 y(Cop)m(yrigh)m(t)602
|
||||
4764 y(c)577 4767 y Fq(\015)f Fu(1988{2018)35 b(F)-8
|
||||
b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390
|
||||
4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8
|
||||
(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.0,)c(29)f(Jan)m(uary)f
|
||||
(2020\).)150 4523 y(This)35 b(is)h(Edition)f(5.0,)k(last)d(up)s(dated)f
|
||||
(29)h(Jan)m(uary)f(2020,)k(of)d Fr(The)f(GNU)i(Bash)e(Reference)i(Man)m
|
||||
(ual)p Fu(,)150 4633 y(for)30 b Ft(Bash)p Fu(,)g(V)-8
|
||||
b(ersion)31 b(5.0.)150 4767 y(Cop)m(yrigh)m(t)602 4764
|
||||
y(c)577 4767 y Fq(\015)f Fu(1988{2018)35 b(F)-8 b(ree)31
|
||||
b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390 4902
|
||||
y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8
|
||||
b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s(cumen)m(t)f
|
||||
(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
|
||||
b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
|
||||
@@ -11922,68 +11922,71 @@ eop end
|
||||
TeXDict begin 52 57 bop 150 -116 a Fu(Chapter)30 b(4:)41
|
||||
b(Shell)30 b(Builtin)h(Commands)2069 b(52)870 299 y Ft(bind)47
|
||||
b([-m)g Fj(keymap)p Ft(])e Fj(keyseq:readline-command)630
|
||||
436 y Fu(Displa)m(y)22 b(curren)m(t)f(Readline)h(\(see)f(Chapter)g(8)g
|
||||
432 y Fu(Displa)m(y)22 b(curren)m(t)f(Readline)h(\(see)f(Chapter)g(8)g
|
||||
([Command)f(Line)h(Editing],)j(page)e(109\))g(k)m(ey)630
|
||||
545 y(and)36 b(function)g(bindings,)i(bind)d(a)i(k)m(ey)g(sequence)g
|
||||
(to)h(a)f(Readline)g(function)f(or)h(macro,)630 655 y(or)44
|
||||
542 y(and)36 b(function)g(bindings,)i(bind)d(a)i(k)m(ey)g(sequence)g
|
||||
(to)h(a)f(Readline)g(function)f(or)h(macro,)630 651 y(or)44
|
||||
b(set)h(a)g(Readline)f(v)-5 b(ariable.)83 b(Eac)m(h)45
|
||||
b(non-option)g(argumen)m(t)f(is)g(a)h(command)f(as)g(it)630
|
||||
765 y(w)m(ould)e(app)s(ear)f(in)h(a)h(Readline)g(initialization)i
|
||||
761 y(w)m(ould)e(app)s(ear)f(in)h(a)h(Readline)g(initialization)i
|
||||
(\014le)d(\(see)h(Section)g(8.3)g([Readline)g(Init)630
|
||||
874 y(File],)c(page)d(112\),)j(but)c(eac)m(h)h(binding)f(or)g(command)h
|
||||
(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)630 984
|
||||
870 y(File],)c(page)d(112\),)j(but)c(eac)m(h)h(binding)f(or)g(command)h
|
||||
(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)630 980
|
||||
y(argumen)m(t;)31 b(e.g.,)h(`)p Ft("\\C-x\\C-r":re-read-init-f)o(ile)p
|
||||
Fu('.)630 1121 y(Options,)e(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m
|
||||
(wing)h(meanings:)630 1285 y Ft(-m)e Fj(keymap)66 b Fu(Use)54
|
||||
Fu('.)630 1113 y(Options,)e(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m
|
||||
(wing)h(meanings:)630 1270 y Ft(-m)e Fj(keymap)66 b Fu(Use)54
|
||||
b Fr(k)m(eymap)j Fu(as)d(the)g(k)m(eymap)g(to)h(b)s(e)e(a\013ected)i(b)
|
||||
m(y)f(the)g(subsequen)m(t)1110 1395 y(bindings.)46 b(Acceptable)34
|
||||
m(y)f(the)g(subsequen)m(t)1110 1379 y(bindings.)46 b(Acceptable)34
|
||||
b Fr(k)m(eymap)i Fu(names)c(are)h Ft(emacs)p Fu(,)f Ft(emacs-standard)p
|
||||
Fu(,)1110 1504 y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p
|
||||
Fu(,)1110 1489 y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p
|
||||
Fu(,)f Ft(vi)p Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p
|
||||
Fu(,)f(and)1110 1614 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44
|
||||
Fu(,)f(and)1110 1598 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44
|
||||
b Fu(is)h(equiv)-5 b(alen)m(t)46 b(to)g Ft(vi-command)c
|
||||
Fu(\()p Ft(vi-move)h Fu(is)i(also)h(a)1110 1724 y(synon)m(ym\);)30
|
||||
Fu(\()p Ft(vi-move)h Fu(is)i(also)h(a)1110 1708 y(synon)m(ym\);)30
|
||||
b Ft(emacs)f Fu(is)i(equiv)-5 b(alen)m(t)32 b(to)f Ft(emacs-standard)p
|
||||
Fu(.)630 1888 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g
|
||||
(Readline)g(functions.)630 2052 y Ft(-p)384 b Fu(Displa)m(y)34
|
||||
Fu(.)630 1864 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g
|
||||
(Readline)g(functions.)630 2021 y Ft(-p)384 b Fu(Displa)m(y)34
|
||||
b(Readline)f(function)g(names)g(and)f(bindings)f(in)i(suc)m(h)f(a)i(w)m
|
||||
(a)m(y)f(that)1110 2162 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g
|
||||
(in)g(a)h(Readline)g(initialization)i(\014le.)630 2326
|
||||
(a)m(y)f(that)1110 2131 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g
|
||||
(in)g(a)h(Readline)g(initialization)i(\014le.)630 2287
|
||||
y Ft(-P)384 b Fu(List)31 b(curren)m(t)f(Readline)h(function)f(names)g
|
||||
(and)g(bindings.)630 2491 y Ft(-v)384 b Fu(Displa)m(y)25
|
||||
(and)g(bindings.)630 2444 y Ft(-v)384 b Fu(Displa)m(y)25
|
||||
b(Readline)f(v)-5 b(ariable)25 b(names)f(and)f(v)-5 b(alues)24
|
||||
b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 2600
|
||||
b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 2553
|
||||
y(can)31 b(b)s(e)e(used)h(as)h(input)e(or)h(in)g(a)h(Readline)g
|
||||
(initialization)j(\014le.)630 2765 y Ft(-V)384 b Fu(List)31
|
||||
(initialization)j(\014le.)630 2710 y Ft(-V)384 b Fu(List)31
|
||||
b(curren)m(t)f(Readline)h(v)-5 b(ariable)31 b(names)f(and)g(v)-5
|
||||
b(alues.)630 2929 y Ft(-s)384 b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g
|
||||
b(alues.)630 2866 y Ft(-s)384 b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g
|
||||
(sequences)f(b)s(ound)f(to)i(macros)g(and)f(the)g(strings)1110
|
||||
3039 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g
|
||||
(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 3148
|
||||
y(Readline)d(initialization)i(\014le.)630 3313 y Ft(-S)384
|
||||
2976 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g
|
||||
(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 3086
|
||||
y(Readline)d(initialization)i(\014le.)630 3242 y Ft(-S)384
|
||||
b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g(sequences)f(b)s(ound)f(to)i
|
||||
(macros)g(and)f(the)g(strings)1110 3422 y(they)31 b(output.)630
|
||||
3587 y Ft(-f)f Fj(filename)1110 3696 y Fu(Read)h(k)m(ey)g(bindings)e
|
||||
(from)h Fr(\014lename)p Fu(.)630 3861 y Ft(-q)g Fj(function)1110
|
||||
3970 y Fu(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m(v)m(ok)m(e)h
|
||||
(the)f(named)f Fr(function)p Fu(.)630 4134 y Ft(-u)g
|
||||
Fj(function)1110 4244 y Fu(Un)m(bind)f(all)i(k)m(eys)g(b)s(ound)e(to)i
|
||||
(the)f(named)g Fr(function)p Fu(.)630 4408 y Ft(-r)g
|
||||
(macros)g(and)f(the)g(strings)1110 3352 y(they)31 b(output.)630
|
||||
3508 y Ft(-f)f Fj(filename)1110 3618 y Fu(Read)h(k)m(ey)g(bindings)e
|
||||
(from)h Fr(\014lename)p Fu(.)630 3774 y Ft(-q)g Fj(function)1110
|
||||
3884 y Fu(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m(v)m(ok)m(e)h
|
||||
(the)f(named)f Fr(function)p Fu(.)630 4041 y Ft(-u)g
|
||||
Fj(function)1110 4150 y Fu(Un)m(bind)f(all)i(k)m(eys)g(b)s(ound)e(to)i
|
||||
(the)f(named)g Fr(function)p Fu(.)630 4307 y Ft(-r)g
|
||||
Fj(keyseq)66 b Fu(Remo)m(v)m(e)32 b(an)m(y)f(curren)m(t)f(binding)f
|
||||
(for)h Fr(k)m(eyseq)p Fu(.)630 4573 y Ft(-x)g Fj(keyseq:shell-command)
|
||||
1110 4682 y Fu(Cause)35 b Fr(shell-command)k Fu(to)d(b)s(e)f(executed)h
|
||||
(for)h Fr(k)m(eyseq)p Fu(.)630 4463 y Ft(-x)g Fj(keyseq:shell-command)
|
||||
1110 4573 y Fu(Cause)35 b Fr(shell-command)k Fu(to)d(b)s(e)f(executed)h
|
||||
(whenev)m(er)f Fr(k)m(eyseq)j Fu(is)d(en)m(tered.)1110
|
||||
4792 y(When)46 b Fr(shell-command)k Fu(is)c(executed,)51
|
||||
b(the)46 b(shell)g(sets)g(the)g Ft(READLINE_)1110 4902
|
||||
4682 y(When)46 b Fr(shell-command)k Fu(is)c(executed,)51
|
||||
b(the)46 b(shell)g(sets)g(the)g Ft(READLINE_)1110 4792
|
||||
y(LINE)37 b Fu(v)-5 b(ariable)38 b(to)g(the)g(con)m(ten)m(ts)i(of)e
|
||||
(the)g(Readline)g(line)g(bu\013er)f(and)g(the)1110 5011
|
||||
y Ft(READLINE_POINT)e Fu(v)-5 b(ariable)39 b(to)h(the)e(curren)m(t)h
|
||||
(lo)s(cation)h(of)f(the)g(insertion)1110 5121 y(p)s(oin)m(t.)59
|
||||
b(If)37 b(the)f(executed)i(command)e(c)m(hanges)i(the)f(v)-5
|
||||
b(alue)37 b(of)f Ft(READLINE_)1110 5230 y(LINE)29 b Fu(or)h
|
||||
Ft(READLINE_POINT)p Fu(,)c(those)31 b(new)e(v)-5 b(alues)31
|
||||
b(will)f(b)s(e)f(re\015ected)i(in)f(the)1110 5340 y(editing)h(state.)p
|
||||
eop end
|
||||
(the)g(Readline)g(line)g(bu\013er)f(and)g(the)1110 4902
|
||||
y Ft(READLINE_POINT)21 b Fu(and)k Ft(READLINE_MARK)c
|
||||
Fu(v)-5 b(ariables)26 b(to)g(the)g(curren)m(t)f(lo)s(ca-)1110
|
||||
5011 y(tion)f(of)g(the)g(insertion)g(p)s(oin)m(t)g(and)f(the)h(sa)m(v)m
|
||||
(ed)h(insertion)f(p)s(oin)m(t)g(\(the)g Fr(mark)6 b Fu(\),)1110
|
||||
5121 y(resp)s(ectiv)m(ely)-8 b(.)43 b(If)30 b(the)h(executed)g(command)
|
||||
g(c)m(hanges)g(the)g(v)-5 b(alue)31 b(of)g(an)m(y)g(of)1110
|
||||
5230 y Ft(READLINE_LINE)p Fu(,)40 b Ft(READLINE_POINT)p
|
||||
Fu(,)f(or)i Ft(READLINE_MARK)p Fu(,)e(those)i(new)1110
|
||||
5340 y(v)-5 b(alues)31 b(will)f(b)s(e)g(re\015ected)h(in)f(the)h
|
||||
(editing)g(state.)p eop end
|
||||
%%Page: 53 59
|
||||
TeXDict begin 53 58 bop 150 -116 a Fu(Chapter)30 b(4:)41
|
||||
b(Shell)30 b(Builtin)h(Commands)2069 b(53)630 299 y Ft(-X)384
|
||||
@@ -14146,142 +14149,149 @@ b Fu(The)34 b(v)-5 b(alue)35 b(of)f(this)g(v)-5 b(ariable)35
|
||||
b(is)g(used)e(as)i(the)f(prompt)g(for)g(the)g Ft(select)f
|
||||
Fu(command.)52 b(If)630 408 y(this)30 b(v)-5 b(ariable)31
|
||||
b(is)g(not)f(set,)i(the)e Ft(select)f Fu(command)h(prompts)f(with)h(`)p
|
||||
Ft(#?)g Fu(')150 568 y Ft(PS4)336 b Fu(The)37 b(v)-5
|
||||
Ft(#?)g Fu(')150 564 y Ft(PS4)336 b Fu(The)37 b(v)-5
|
||||
b(alue)37 b(of)g(this)g(parameter)h(is)f(expanded)f(lik)m(e)i
|
||||
Fr(PS1)44 b Fu(and)37 b(the)g(expanded)f(v)-5 b(alue)38
|
||||
b(is)630 677 y(the)d(prompt)f(prin)m(ted)g(b)s(efore)g(the)h(command)f
|
||||
b(is)630 673 y(the)d(prompt)f(prin)m(ted)g(b)s(efore)g(the)h(command)f
|
||||
(line)h(is)g(ec)m(ho)s(ed)g(when)f(the)h Ft(-x)f Fu(option)h(is)630
|
||||
787 y(set)k(\(see)h(Section)g(4.3.1)g([The)f(Set)g(Builtin],)j(page)e
|
||||
783 y(set)k(\(see)h(Section)g(4.3.1)g([The)f(Set)g(Builtin],)j(page)e
|
||||
(62\).)67 b(The)38 b(\014rst)g(c)m(haracter)j(of)e(the)630
|
||||
897 y(expanded)33 b(v)-5 b(alue)33 b(is)h(replicated)g(m)m(ultiple)g
|
||||
892 y(expanded)33 b(v)-5 b(alue)33 b(is)h(replicated)g(m)m(ultiple)g
|
||||
(times,)h(as)f(necessary)-8 b(,)35 b(to)f(indicate)g(m)m(ultiple)630
|
||||
1006 y(lev)m(els)e(of)e(indirection.)42 b(The)29 b(default)i(is)f(`)p
|
||||
Ft(+)h Fu('.)150 1166 y Ft(PWD)336 b Fu(The)30 b(curren)m(t)g(w)m
|
||||
1002 y(lev)m(els)e(of)e(indirection.)42 b(The)29 b(default)i(is)f(`)p
|
||||
Ft(+)h Fu('.)150 1157 y Ft(PWD)336 b Fu(The)30 b(curren)m(t)g(w)m
|
||||
(orking)h(directory)g(as)f(set)h(b)m(y)f(the)h Ft(cd)f
|
||||
Fu(builtin.)150 1325 y Ft(RANDOM)192 b Fu(Eac)m(h)26
|
||||
Fu(builtin.)150 1313 y Ft(RANDOM)192 b Fu(Eac)m(h)26
|
||||
b(time)g(this)f(parameter)h(is)g(referenced,)g(it)g(expands)f(to)h(a)g
|
||||
(random)e(in)m(teger)j(b)s(et)m(w)m(een)630 1435 y(0)e(and)e(32767.)41
|
||||
(random)e(in)m(teger)j(b)s(et)m(w)m(een)630 1422 y(0)e(and)e(32767.)41
|
||||
b(Assigning)25 b(a)f(v)-5 b(alue)25 b(to)g(this)f(v)-5
|
||||
b(ariable)25 b(seeds)f(the)h(random)e(n)m(um)m(b)s(er)g(gener-)630
|
||||
1544 y(ator.)41 b(If)27 b Ft(RANDOM)f Fu(is)h(unset,)h(it)g(loses)h
|
||||
1532 y(ator.)41 b(If)27 b Ft(RANDOM)f Fu(is)h(unset,)h(it)g(loses)h
|
||||
(its)f(sp)s(ecial)g(prop)s(erties,)g(ev)m(en)g(if)g(it)g(is)f
|
||||
(subsequen)m(tly)630 1654 y(reset.)150 1813 y Ft(READLINE_LINE)630
|
||||
1923 y Fu(The)g(con)m(ten)m(ts)i(of)f(the)g(Readline)g(line)g
|
||||
(subsequen)m(tly)630 1641 y(reset.)150 1797 y Ft(READLINE_LINE)630
|
||||
1906 y Fu(The)g(con)m(ten)m(ts)i(of)f(the)g(Readline)g(line)g
|
||||
(bu\013er,)f(for)h(use)f(with)g(`)p Ft(bind)j(-x)p Fu(')d(\(see)h
|
||||
(Section)h(4.2)630 2032 y([Bash)i(Builtins],)g(page)g(51\).)150
|
||||
2192 y Ft(READLINE_POINT)630 2301 y Fu(The)23 b(p)s(osition)g(of)g(the)
|
||||
(Section)h(4.2)630 2016 y([Bash)i(Builtins],)g(page)g(51\).)150
|
||||
2171 y Ft(READLINE_MARK)630 2281 y Fu(The)26 b(p)s(osition)h(of)g(the)g
|
||||
Fr(mark)32 b Fu(\(sa)m(v)m(ed)c(insertion)f(p)s(oin)m(t\))g(in)g(the)g
|
||||
(Readline)g(line)g(bu\013er,)g(for)630 2390 y(use)36
|
||||
b(with)f(`)p Ft(bind)30 b(-x)p Fu(')35 b(\(see)i(Section)g(4.2)g([Bash)
|
||||
f(Builtins],)i(page)f(51\).)58 b(The)35 b(c)m(haracters)630
|
||||
2500 y(b)s(et)m(w)m(een)c(the)g(insertion)f(p)s(oin)m(t)g(and)g(the)h
|
||||
(mark)f(are)h(often)f(called)i(the)f Fr(region)p Fu(.)150
|
||||
2655 y Ft(READLINE_POINT)630 2765 y Fu(The)23 b(p)s(osition)g(of)g(the)
|
||||
h(insertion)f(p)s(oin)m(t)g(in)g(the)g(Readline)h(line)f(bu\013er,)h
|
||||
(for)f(use)g(with)g(`)p Ft(bind)630 2411 y(-x)p Fu(')30
|
||||
(for)f(use)g(with)g(`)p Ft(bind)630 2874 y(-x)p Fu(')30
|
||||
b(\(see)h(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(51\).)150
|
||||
2570 y Ft(REPLY)240 b Fu(The)30 b(default)g(v)-5 b(ariable)32
|
||||
b(for)e(the)g Ft(read)g Fu(builtin.)150 2730 y Ft(SECONDS)144
|
||||
3029 y Ft(REPLY)240 b Fu(The)30 b(default)g(v)-5 b(ariable)32
|
||||
b(for)e(the)g Ft(read)g Fu(builtin.)150 3185 y Ft(SECONDS)144
|
||||
b Fu(This)40 b(v)-5 b(ariable)41 b(expands)f(to)h(the)g(n)m(um)m(b)s
|
||||
(er)e(of)i(seconds)g(since)g(the)f(shell)h(w)m(as)g(started.)630
|
||||
2839 y(Assignmen)m(t)i(to)g(this)g(v)-5 b(ariable)43
|
||||
3294 y(Assignmen)m(t)i(to)g(this)g(v)-5 b(ariable)43
|
||||
b(resets)g(the)g(coun)m(t)g(to)g(the)g(v)-5 b(alue)43
|
||||
b(assigned,)j(and)c(the)630 2949 y(expanded)35 b(v)-5
|
||||
b(assigned,)j(and)c(the)630 3404 y(expanded)35 b(v)-5
|
||||
b(alue)36 b(b)s(ecomes)h(the)f(v)-5 b(alue)36 b(assigned)g(plus)f(the)h
|
||||
(n)m(um)m(b)s(er)f(of)h(seconds)g(since)630 3059 y(the)c(assignmen)m
|
||||
(n)m(um)m(b)s(er)f(of)h(seconds)g(since)630 3513 y(the)c(assignmen)m
|
||||
(t.)46 b(If)31 b Ft(SECONDS)f Fu(is)h(unset,)h(it)h(loses)f(its)g(sp)s
|
||||
(ecial)h(prop)s(erties,)e(ev)m(en)i(if)f(it)g(is)630
|
||||
3168 y(subsequen)m(tly)e(reset.)150 3328 y Ft(SHELL)240
|
||||
3623 y(subsequen)m(tly)e(reset.)150 3778 y Ft(SHELL)240
|
||||
b Fu(This)24 b(en)m(vironmen)m(t)i(v)-5 b(ariable)26
|
||||
b(expands)e(to)i(the)g(full)f(pathname)g(to)h(the)f(shell.)39
|
||||
b(If)25 b(it)g(is)h(not)630 3437 y(set)36 b(when)f(the)h(shell)g
|
||||
b(If)25 b(it)g(is)h(not)630 3888 y(set)36 b(when)f(the)h(shell)g
|
||||
(starts,)i(Bash)e(assigns)h(to)f(it)h(the)f(full)f(pathname)h(of)g(the)
|
||||
g(curren)m(t)630 3547 y(user's)30 b(login)h(shell.)150
|
||||
3706 y Ft(SHELLOPTS)630 3816 y Fu(A)g(colon-separated)h(list)f(of)g
|
||||
g(curren)m(t)630 3998 y(user's)30 b(login)h(shell.)150
|
||||
4153 y Ft(SHELLOPTS)630 4262 y Fu(A)g(colon-separated)h(list)f(of)g
|
||||
(enabled)f(shell)h(options.)41 b(Eac)m(h)31 b(w)m(ord)f(in)g(the)h
|
||||
(list)g(is)g(a)g(v)-5 b(alid)630 3925 y(argumen)m(t)28
|
||||
(list)g(is)g(a)g(v)-5 b(alid)630 4372 y(argumen)m(t)28
|
||||
b(for)f(the)h Ft(-o)e Fu(option)i(to)g(the)g Ft(set)e
|
||||
Fu(builtin)h(command)g(\(see)i(Section)f(4.3.1)h([The)630
|
||||
4035 y(Set)g(Builtin],)h(page)f(62\).)42 b(The)28 b(options)h(app)s
|
||||
4482 y(Set)g(Builtin],)h(page)f(62\).)42 b(The)28 b(options)h(app)s
|
||||
(earing)f(in)g Ft(SHELLOPTS)e Fu(are)j(those)h(rep)s(orted)630
|
||||
4144 y(as)g(`)p Ft(on)p Fu(')f(b)m(y)h(`)p Ft(set)g(-o)p
|
||||
4591 y(as)g(`)p Ft(on)p Fu(')f(b)m(y)h(`)p Ft(set)g(-o)p
|
||||
Fu('.)40 b(If)29 b(this)h(v)-5 b(ariable)30 b(is)g(in)f(the)h(en)m
|
||||
(vironmen)m(t)g(when)f(Bash)h(starts)g(up,)630 4254 y(eac)m(h)41
|
||||
(vironmen)m(t)g(when)f(Bash)h(starts)g(up,)630 4701 y(eac)m(h)41
|
||||
b(shell)e(option)h(in)f(the)h(list)g(will)f(b)s(e)g(enabled)h(b)s
|
||||
(efore)f(reading)g(an)m(y)h(startup)f(\014les.)630 4364
|
||||
(efore)f(reading)g(an)m(y)h(startup)f(\014les.)630 4810
|
||||
y(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)150
|
||||
4523 y Ft(SHLVL)240 b Fu(Incremen)m(ted)21 b(b)m(y)g(one)g(eac)m(h)h
|
||||
4966 y Ft(SHLVL)240 b Fu(Incremen)m(ted)21 b(b)m(y)g(one)g(eac)m(h)h
|
||||
(time)f(a)h(new)e(instance)h(of)g(Bash)g(is)g(started.)38
|
||||
b(This)20 b(is)h(in)m(tended)630 4633 y(to)31 b(b)s(e)f(a)h(coun)m(t)g
|
||||
b(This)20 b(is)h(in)m(tended)630 5075 y(to)31 b(b)s(e)f(a)h(coun)m(t)g
|
||||
(of)f(ho)m(w)h(deeply)f(y)m(our)g(Bash)h(shells)f(are)h(nested.)150
|
||||
4792 y Ft(SRANDOM)144 b Fu(This)36 b(v)-5 b(ariable)37
|
||||
5230 y Ft(SRANDOM)144 b Fu(This)36 b(v)-5 b(ariable)37
|
||||
b(expands)f(to)h(a)g(32-bit)h(pseudo-random)d(n)m(um)m(b)s(er)g(eac)m
|
||||
(h)j(time)f(it)g(is)g(ref-)630 4902 y(erenced.)47 b(The)32
|
||||
(h)j(time)f(it)g(is)g(ref-)630 5340 y(erenced.)47 b(The)32
|
||||
b(random)g(n)m(um)m(b)s(er)f(generator)j(is)e(not)h(linear)g(on)f
|
||||
(systems)h(that)g(supp)s(ort)630 5011 y Ft(/dev/urandom)26
|
||||
b Fu(or)k Ft(arc4random)p Fu(,)d(so)j(eac)m(h)g(returned)f(n)m(um)m(b)s
|
||||
(er)f(has)h(no)g(relationship)h(to)630 5121 y(the)39
|
||||
b(n)m(um)m(b)s(ers)e(preceding)i(it.)66 b(The)38 b(random)g(n)m(um)m(b)
|
||||
s(er)f(generator)j(cannot)g(b)s(e)e(seeded,)630 5230
|
||||
y(so)c(assignmen)m(ts)g(to)g(this)f(v)-5 b(ariable)34
|
||||
b(ha)m(v)m(e)h(no)e(e\013ect.)51 b(If)33 b Ft(SRANDOM)e
|
||||
Fu(is)j(unset,)g(it)f(loses)i(its)630 5340 y(sp)s(ecial)c(prop)s
|
||||
(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)p
|
||||
eop end
|
||||
(systems)h(that)g(supp)s(ort)p eop end
|
||||
%%Page: 85 91
|
||||
TeXDict begin 85 90 bop 150 -116 a Fu(Chapter)30 b(5:)41
|
||||
b(Shell)30 b(V)-8 b(ariables)2459 b(85)150 299 y Ft(TIMEFORMAT)630
|
||||
408 y Fu(The)30 b(v)-5 b(alue)32 b(of)f(this)g(parameter)g(is)g(used)f
|
||||
(as)h(a)g(format)h(string)f(sp)s(ecifying)f(ho)m(w)h(the)g(tim-)630
|
||||
518 y(ing)37 b(information)f(for)h(pip)s(elines)f(pre\014xed)f(with)h
|
||||
(the)h Ft(time)e Fu(reserv)m(ed)i(w)m(ord)f(should)g(b)s(e)630
|
||||
628 y(displa)m(y)m(ed.)k(The)27 b(`)p Ft(\045)p Fu(')h(c)m(haracter)h
|
||||
b(Shell)30 b(V)-8 b(ariables)2459 b(85)630 299 y Ft(/dev/urandom)26
|
||||
b Fu(or)k Ft(arc4random)p Fu(,)d(so)j(eac)m(h)g(returned)f(n)m(um)m(b)s
|
||||
(er)f(has)h(no)g(relationship)h(to)630 408 y(the)39 b(n)m(um)m(b)s(ers)
|
||||
e(preceding)i(it.)66 b(The)38 b(random)g(n)m(um)m(b)s(er)f(generator)j
|
||||
(cannot)g(b)s(e)e(seeded,)630 518 y(so)c(assignmen)m(ts)g(to)g(this)f
|
||||
(v)-5 b(ariable)34 b(ha)m(v)m(e)h(no)e(e\013ect.)51 b(If)33
|
||||
b Ft(SRANDOM)e Fu(is)j(unset,)g(it)f(loses)i(its)630
|
||||
628 y(sp)s(ecial)c(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)
|
||||
m(tly)f(reset.)150 787 y Ft(TIMEFORMAT)630 897 y Fu(The)g(v)-5
|
||||
b(alue)32 b(of)f(this)g(parameter)g(is)g(used)f(as)h(a)g(format)h
|
||||
(string)f(sp)s(ecifying)f(ho)m(w)h(the)g(tim-)630 1006
|
||||
y(ing)37 b(information)f(for)h(pip)s(elines)f(pre\014xed)f(with)h(the)h
|
||||
Ft(time)e Fu(reserv)m(ed)i(w)m(ord)f(should)g(b)s(e)630
|
||||
1116 y(displa)m(y)m(ed.)k(The)27 b(`)p Ft(\045)p Fu(')h(c)m(haracter)h
|
||||
(in)m(tro)s(duces)e(an)h(escap)s(e)g(sequence)g(that)g(is)f(expanded)g
|
||||
(to)630 737 y(a)37 b(time)g(v)-5 b(alue)36 b(or)h(other)f(information.)
|
||||
59 b(The)36 b(escap)s(e)g(sequences)h(and)e(their)i(meanings)630
|
||||
847 y(are)31 b(as)f(follo)m(ws;)i(the)f(braces)f(denote)h(optional)h(p)
|
||||
s(ortions.)630 1006 y Ft(\045\045)384 b Fu(A)30 b(literal)i(`)p
|
||||
Ft(\045)p Fu('.)630 1166 y Ft(\045[)p Fj(p)p Ft(][l]R)96
|
||||
b Fu(The)30 b(elapsed)h(time)g(in)f(seconds.)630 1325
|
||||
y Ft(\045[)p Fj(p)p Ft(][l]U)96 b Fu(The)30 b(n)m(um)m(b)s(er)f(of)h
|
||||
(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(user)f(mo)s(de.)630
|
||||
1484 y Ft(\045[)p Fj(p)p Ft(][l]S)96 b Fu(The)30 b(n)m(um)m(b)s(er)f
|
||||
(of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(system)g(mo)s(de.)630
|
||||
1644 y Ft(\045P)384 b Fu(The)30 b(CPU)g(p)s(ercen)m(tage,)i(computed)e
|
||||
(as)h(\(\045U)f Ft(+)g Fu(\045S\))g(/)h(\045R.)630 1803
|
||||
y(The)23 b(optional)j Fr(p)g Fu(is)e(a)g(digit)h(sp)s(ecifying)e(the)h
|
||||
(precision,)i(the)e(n)m(um)m(b)s(er)f(of)h(fractional)h(digits)630
|
||||
1913 y(after)36 b(a)f(decimal)i(p)s(oin)m(t.)55 b(A)35
|
||||
b(v)-5 b(alue)36 b(of)f(0)h(causes)g(no)f(decimal)h(p)s(oin)m(t)f(or)h
|
||||
(fraction)g(to)g(b)s(e)630 2022 y(output.)48 b(A)m(t)34
|
||||
b(most)f(three)g(places)h(after)f(the)g(decimal)h(p)s(oin)m(t)f(ma)m(y)
|
||||
h(b)s(e)e(sp)s(eci\014ed;)i(v)-5 b(alues)630 2132 y(of)31
|
||||
b Fr(p)h Fu(greater)g(than)e(3)h(are)f(c)m(hanged)h(to)g(3.)42
|
||||
(to)630 1225 y(a)37 b(time)g(v)-5 b(alue)36 b(or)h(other)f
|
||||
(information.)59 b(The)36 b(escap)s(e)g(sequences)h(and)e(their)i
|
||||
(meanings)630 1335 y(are)31 b(as)f(follo)m(ws;)i(the)f(braces)f(denote)
|
||||
h(optional)h(p)s(ortions.)630 1494 y Ft(\045\045)384
|
||||
b Fu(A)30 b(literal)i(`)p Ft(\045)p Fu('.)630 1654 y
|
||||
Ft(\045[)p Fj(p)p Ft(][l]R)96 b Fu(The)30 b(elapsed)h(time)g(in)f
|
||||
(seconds.)630 1813 y Ft(\045[)p Fj(p)p Ft(][l]U)96 b
|
||||
Fu(The)30 b(n)m(um)m(b)s(er)f(of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g
|
||||
(user)f(mo)s(de.)630 1973 y Ft(\045[)p Fj(p)p Ft(][l]S)96
|
||||
b Fu(The)30 b(n)m(um)m(b)s(er)f(of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g
|
||||
(system)g(mo)s(de.)630 2132 y Ft(\045P)384 b Fu(The)30
|
||||
b(CPU)g(p)s(ercen)m(tage,)i(computed)e(as)h(\(\045U)f
|
||||
Ft(+)g Fu(\045S\))g(/)h(\045R.)630 2291 y(The)23 b(optional)j
|
||||
Fr(p)g Fu(is)e(a)g(digit)h(sp)s(ecifying)e(the)h(precision,)i(the)e(n)m
|
||||
(um)m(b)s(er)f(of)h(fractional)h(digits)630 2401 y(after)36
|
||||
b(a)f(decimal)i(p)s(oin)m(t.)55 b(A)35 b(v)-5 b(alue)36
|
||||
b(of)f(0)h(causes)g(no)f(decimal)h(p)s(oin)m(t)f(or)h(fraction)g(to)g
|
||||
(b)s(e)630 2511 y(output.)48 b(A)m(t)34 b(most)f(three)g(places)h
|
||||
(after)f(the)g(decimal)h(p)s(oin)m(t)f(ma)m(y)h(b)s(e)e(sp)s
|
||||
(eci\014ed;)i(v)-5 b(alues)630 2620 y(of)31 b Fr(p)h
|
||||
Fu(greater)g(than)e(3)h(are)f(c)m(hanged)h(to)g(3.)42
|
||||
b(If)29 b Fr(p)k Fu(is)d(not)h(sp)s(eci\014ed,)f(the)h(v)-5
|
||||
b(alue)30 b(3)h(is)g(used.)630 2267 y(The)54 b(optional)h
|
||||
b(alue)30 b(3)h(is)g(used.)630 2755 y(The)54 b(optional)h
|
||||
Ft(l)f Fu(sp)s(eci\014es)g(a)h(longer)f(format,)61 b(including)54
|
||||
b(min)m(utes,)61 b(of)54 b(the)g(form)630 2376 y Fr(MM)10
|
||||
b(min)m(utes,)61 b(of)54 b(the)g(form)630 2864 y Fr(MM)10
|
||||
b Fu(m)p Fr(SS)p Fu(.)p Fr(FF)d Fu(s.)103 b(The)50 b(v)-5
|
||||
b(alue)52 b(of)f Fr(p)j Fu(determines)d(whether)f(or)h(not)h(the)f
|
||||
(fraction)h(is)630 2486 y(included.)630 2620 y(If)30
|
||||
(fraction)h(is)630 2974 y(included.)630 3108 y(If)30
|
||||
b(this)g(v)-5 b(ariable)31 b(is)g(not)f(set,)i(Bash)e(acts)h(as)g(if)f
|
||||
(it)h(had)f(the)h(v)-5 b(alue)870 2755 y Ft
|
||||
(it)h(had)f(the)h(v)-5 b(alue)870 3243 y Ft
|
||||
($'\\nreal\\t\0453lR\\nuser\\t\0453)o(lU\\n)o(sys\\)o(t\0453)o(lS')630
|
||||
2889 y Fu(If)37 b(the)g(v)-5 b(alue)38 b(is)f(n)m(ull,)i(no)f(timing)f
|
||||
3377 y Fu(If)37 b(the)g(v)-5 b(alue)38 b(is)f(n)m(ull,)i(no)f(timing)f
|
||||
(information)h(is)f(displa)m(y)m(ed.)62 b(A)37 b(trailing)i(newline)e
|
||||
(is)630 2999 y(added)30 b(when)f(the)i(format)f(string)h(is)f(displa)m
|
||||
(y)m(ed.)150 3158 y Ft(TMOUT)240 b Fu(If)22 b(set)h(to)g(a)g(v)-5
|
||||
(is)630 3487 y(added)30 b(when)f(the)i(format)f(string)h(is)f(displa)m
|
||||
(y)m(ed.)150 3646 y Ft(TMOUT)240 b Fu(If)22 b(set)h(to)g(a)g(v)-5
|
||||
b(alue)23 b(greater)h(than)e(zero,)j Ft(TMOUT)d Fu(is)g(treated)i(as)e
|
||||
(the)h(default)g(timeout)g(for)g(the)630 3268 y Ft(read)31
|
||||
(the)h(default)g(timeout)g(for)g(the)630 3756 y Ft(read)31
|
||||
b Fu(builtin)h(\(see)h(Section)f(4.2)i([Bash)e(Builtins],)h(page)g
|
||||
(51\).)47 b(The)32 b Ft(select)e Fu(command)630 3377
|
||||
(51\).)47 b(The)32 b Ft(select)e Fu(command)630 3866
|
||||
y(\(see)f(Section)h(3.2.4.2)g([Conditional)g(Constructs],)e(page)i
|
||||
(11\))f(terminates)g(if)g(input)e(do)s(es)630 3487 y(not)k(arriv)m(e)g
|
||||
(11\))f(terminates)g(if)g(input)e(do)s(es)630 3975 y(not)k(arriv)m(e)g
|
||||
(after)g Ft(TMOUT)e Fu(seconds)h(when)f(input)h(is)g(coming)h(from)f(a)
|
||||
h(terminal.)630 3621 y(In)40 b(an)h(in)m(teractiv)m(e)i(shell,)h(the)d
|
||||
h(terminal.)630 4110 y(In)40 b(an)h(in)m(teractiv)m(e)i(shell,)h(the)d
|
||||
(v)-5 b(alue)41 b(is)g(in)m(terpreted)g(as)f(the)h(n)m(um)m(b)s(er)f
|
||||
(of)h(seconds)f(to)630 3731 y(w)m(ait)28 b(for)e(a)g(line)h(of)g(input)
|
||||
(of)h(seconds)f(to)630 4219 y(w)m(ait)28 b(for)e(a)g(line)h(of)g(input)
|
||||
e(after)i(issuing)f(the)h(primary)e(prompt.)39 b(Bash)26
|
||||
b(terminates)h(after)630 3841 y(w)m(aiting)32 b(for)e(that)h(n)m(um)m
|
||||
b(terminates)h(after)630 4329 y(w)m(aiting)32 b(for)e(that)h(n)m(um)m
|
||||
(b)s(er)e(of)h(seconds)h(if)f(a)h(complete)h(line)e(of)h(input)e(do)s
|
||||
(es)h(not)h(arriv)m(e.)150 4000 y Ft(TMPDIR)192 b Fu(If)39
|
||||
(es)h(not)h(arriv)m(e.)150 4488 y Ft(TMPDIR)192 b Fu(If)39
|
||||
b(set,)j(Bash)e(uses)f(its)h(v)-5 b(alue)40 b(as)f(the)h(name)f(of)h(a)
|
||||
g(directory)g(in)f(whic)m(h)g(Bash)h(creates)630 4110
|
||||
g(directory)g(in)f(whic)m(h)g(Bash)h(creates)630 4598
|
||||
y(temp)s(orary)30 b(\014les)g(for)g(the)h(shell's)g(use.)150
|
||||
4269 y Ft(UID)336 b Fu(The)30 b(n)m(umeric)g(real)h(user)f(id)g(of)g
|
||||
4757 y Ft(UID)336 b Fu(The)30 b(n)m(umeric)g(real)h(user)f(id)g(of)g
|
||||
(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5 b(ariable)31
|
||||
b(is)f(readonly)-8 b(.)p eop end
|
||||
%%Page: 86 92
|
||||
@@ -21047,185 +21057,188 @@ b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
|
||||
g(:)g(:)g(:)h(:)f(:)20 b Fb(84)150 1892 y Fe(READLINE_LINE)25
|
||||
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
|
||||
b Fb(84)150 1979 y Fe(READLINE_POINT)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
|
||||
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
|
||||
g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(84)150 2066 y Fe(REPLY)9
|
||||
b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
|
||||
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(84)150 2153 y
|
||||
Fe(revert-all-at-newline)17 b Fc(:)h(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32
|
||||
b Fb(117)146 2386 y Fs(S)150 2502 y Fe(SECONDS)22 b Fc(:)13
|
||||
b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
|
||||
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
|
||||
g(:)g(:)g(:)35 b Fb(84)150 2589 y Fe(SHELL)9 b Fc(:)14
|
||||
b Fb(84)150 1979 y Fe(READLINE_MARK)25 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g
|
||||
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
|
||||
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(84)150 2066 y
|
||||
Fe(READLINE_POINT)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
|
||||
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
|
||||
(:)g(:)g(:)34 b Fb(84)150 2153 y Fe(REPLY)9 b Fc(:)14
|
||||
b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
|
||||
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
|
||||
g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(84)150 2676 y Fe(SHELLOPTS)15
|
||||
b Fc(:)h(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
|
||||
f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
|
||||
(:)g(:)g(:)30 b Fb(84)150 2763 y Fe(SHLVL)9 b Fc(:)14
|
||||
b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
|
||||
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
|
||||
g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(84)150 2851 y Fe(show-all-if-ambiguous)
|
||||
g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(84)150 2240 y Fe(revert-all-at-newline)
|
||||
17 b Fc(:)h(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
|
||||
(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(117)150 2938 y Fe
|
||||
(show-all-if-unmodified)14 b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
|
||||
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(117)150
|
||||
3025 y Fe(show-mode-in-prompt)d Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
|
||||
b Fb(118)2025 260 y Fe(skip-completed-text)26 b Fc(:)13
|
||||
b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(118)2025 347 y Fe(SRANDOM)22
|
||||
b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
|
||||
(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(117)146 2473 y Fs(S)150
|
||||
2589 y Fe(SECONDS)22 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
|
||||
h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(84)150
|
||||
2676 y Fe(SHELL)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
|
||||
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
|
||||
b Fb(84)150 2763 y Fe(SHELLOPTS)15 b Fc(:)h(:)d(:)g(:)g(:)g(:)g(:)g(:)h
|
||||
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
|
||||
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30 b Fb(84)150
|
||||
2851 y Fe(SHLVL)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
|
||||
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
|
||||
b Fb(84)150 2938 y Fe(show-all-if-ambiguous)17 b Fc(:)h(:)13
|
||||
b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
|
||||
(:)g(:)g(:)32 b Fb(117)150 3025 y Fe(show-all-if-unmodified)14
|
||||
b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
|
||||
h(:)f(:)g(:)g(:)29 b Fb(117)150 3112 y Fe(show-mode-in-prompt)d
|
||||
Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(118)2025 260 y
|
||||
Fe(skip-completed-text)26 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
|
||||
b Fb(118)2025 347 y Fe(SRANDOM)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
|
||||
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
|
||||
b Fb(84)2021 669 y Fs(T)2025 798 y Fe(TEXTDOMAIN)15 b
|
||||
Fc(:)g(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
|
||||
f(:)g(:)30 b Fb(7)2025 889 y Fe(TEXTDOMAINDIR)7 b Fc(:)16
|
||||
b(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
|
||||
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23
|
||||
b Fb(7)2025 981 y Fe(TIMEFORMAT)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g
|
||||
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
|
||||
g(:)g(:)h(:)f(:)g(:)35 b Fb(84)2021 664 y Fs(T)2025 792
|
||||
y Fe(TEXTDOMAIN)15 b Fc(:)g(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
|
||||
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
|
||||
g(:)g(:)g(:)g(:)h(:)f(:)g(:)30 b Fb(7)2025 883 y Fe(TEXTDOMAINDIR)7
|
||||
b Fc(:)16 b(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
|
||||
23 b Fb(7)2025 975 y Fe(TIMEFORMAT)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
|
||||
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(85)2025
|
||||
1066 y Fe(TMOUT)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
|
||||
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(85)2025
|
||||
1072 y Fe(TMOUT)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
|
||||
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
|
||||
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
|
||||
b Fb(85)2025 1153 y Fe(TMPDIR)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
b Fb(85)2025 1159 y Fe(TMPDIR)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
|
||||
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
|
||||
b Fb(85)2021 1470 y Fs(U)2025 1594 y Fe(UID)14 b Fc(:)f(:)g(:)h(:)f(:)g
|
||||
b Fb(85)2021 1481 y Fs(U)2025 1606 y Fe(UID)14 b Fc(:)f(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
|
||||
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)f(:)28 b Fb(85)2021 1911 y Fs(V)2025 2040
|
||||
(:)g(:)h(:)f(:)28 b Fb(85)2021 1928 y Fs(V)2025 2057
|
||||
y Fe(vi-cmd-mode-string)7 b Fc(:)17 b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g
|
||||
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22
|
||||
b Fb(118)2025 2131 y Fe(vi-ins-mode-string)7 b Fc(:)17
|
||||
b Fb(118)2025 2148 y Fe(vi-ins-mode-string)7 b Fc(:)17
|
||||
b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
|
||||
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(118)2025 2218
|
||||
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(118)2025 2235
|
||||
y Fe(visible-stats)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
|
||||
f(:)g(:)35 b Fb(118)150 3658 y Fs(D.4)68 b(F)-11 b(unction)44
|
||||
b(Index)146 4143 y(A)150 4269 y Fe(abort)27 b(\(C-g\))15
|
||||
f(:)g(:)35 b Fb(118)150 3751 y Fs(D.4)68 b(F)-11 b(unction)44
|
||||
b(Index)146 4237 y(A)150 4354 y Fe(abort)27 b(\(C-g\))15
|
||||
b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
|
||||
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30
|
||||
b Fb(132)150 4360 y Fe(accept-line)e(\(Newline)g(or)e(Return\))12
|
||||
b Fb(132)150 4442 y Fe(accept-line)e(\(Newline)g(or)e(Return\))12
|
||||
b Fc(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)27
|
||||
b Fb(126)150 4447 y Fe(alias-expand-line)i(\(\))9 b Fc(:)14
|
||||
b Fb(126)150 4529 y Fe(alias-expand-line)i(\(\))9 b Fc(:)14
|
||||
b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
|
||||
(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(134)146 4761 y Fs(B)150
|
||||
4887 y Fe(backward-char)29 b(\(C-b\))12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)
|
||||
(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(134)146 4784 y Fs(B)150
|
||||
4902 y Fe(backward-char)29 b(\(C-b\))12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)
|
||||
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
|
||||
(:)26 b Fb(125)150 4978 y Fe(backward-delete-char)k(\(Rubout\))22
|
||||
(:)26 b Fb(125)150 4989 y Fe(backward-delete-char)k(\(Rubout\))22
|
||||
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
|
||||
b Fb(128)150 5068 y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))e
|
||||
b Fb(128)150 5077 y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))e
|
||||
Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
|
||||
Fb(129)150 5159 y Fe(backward-kill-word)30 b(\(M-DEL\))11
|
||||
Fb(129)150 5165 y Fe(backward-kill-word)30 b(\(M-DEL\))11
|
||||
b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
|
||||
26 b Fb(129)150 5249 y Fe(backward-word)j(\(M-b\))12
|
||||
26 b Fb(129)150 5252 y Fe(backward-word)j(\(M-b\))12
|
||||
b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
|
||||
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(125)150 5340
|
||||
y Fe(beginning-of-history)k(\(M-<\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(126)2025
|
||||
4113 y Fe(beginning-of-line)j(\(C-a\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)
|
||||
4206 y Fe(beginning-of-line)j(\(C-a\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)
|
||||
f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
|
||||
b Fb(125)2025 4200 y Fe(bracketed-paste-begin)c(\(\))16
|
||||
b Fb(125)2025 4294 y Fe(bracketed-paste-begin)c(\(\))16
|
||||
b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
|
||||
g(:)g(:)31 b Fb(128)2021 4498 y Fs(C)2025 4622 y Fe
|
||||
g(:)g(:)31 b Fb(128)2021 4589 y Fs(C)2025 4713 y Fe
|
||||
(call-last-kbd-macro)f(\(C-x)c(e\))15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)30 b Fb(132)2025 4712
|
||||
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)30 b Fb(132)2025 4802
|
||||
y Fe(capitalize-word)f(\(M-c\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)
|
||||
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
|
||||
b Fb(128)2025 4802 y Fe(character-search)29 b(\(C-]\))22
|
||||
b Fb(128)2025 4892 y Fe(character-search)29 b(\(C-]\))22
|
||||
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)h(:)f(:)g(:)g(:)36 b Fb(133)2025 4891 y Fe
|
||||
(:)h(:)f(:)g(:)g(:)36 b Fb(133)2025 4982 y Fe
|
||||
(character-search-backward)31 b(\(M-C-]\))10 b Fc(:)15
|
||||
b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(133)2025 4981
|
||||
b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(133)2025 5071
|
||||
y Fe(clear-screen)j(\(C-l\))14 b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f
|
||||
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29
|
||||
b Fb(126)2025 5071 y Fe(complete)e(\(TAB\))7 b Fc(:)15
|
||||
b Fb(126)2025 5161 y Fe(complete)e(\(TAB\))7 b Fc(:)15
|
||||
b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
|
||||
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)22
|
||||
b Fb(130)2025 5161 y Fe(complete-command)29 b(\(M-!\))22
|
||||
b Fb(130)2025 5250 y Fe(complete-command)29 b(\(M-!\))22
|
||||
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)h(:)f(:)g(:)g(:)36 b Fb(131)2025 5250 y Fe(complete-filename)29
|
||||
(:)h(:)f(:)g(:)g(:)36 b Fb(131)2025 5340 y Fe(complete-filename)29
|
||||
b(\(M-/\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
|
||||
f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(131)2025 5340 y Fe
|
||||
(complete-hostname)29 b(\(M-@\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
|
||||
b Fb(131)p eop end
|
||||
f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(131)p eop end
|
||||
%%Page: 178 184
|
||||
TeXDict begin 178 183 bop 150 -116 a Fu(App)s(endix)29
|
||||
b(D:)i(Indexes)2623 b(178)150 264 y Fe(complete-into-braces)30
|
||||
b(\(M-{\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
|
||||
(:)g(:)g(:)g(:)26 b Fb(132)150 354 y Fe(complete-username)j(\(M-~\))20
|
||||
b(D:)i(Indexes)2623 b(178)150 264 y Fe(complete-hostname)29
|
||||
b(\(M-@\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
|
||||
g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(131)150 353 y Fe
|
||||
(complete-into-braces)d(\(M-{\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(132)150 443
|
||||
y Fe(complete-username)j(\(M-~\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33
|
||||
b Fb(131)150 533 y Fe(complete-variable)c(\(M-$\))20
|
||||
b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)f(:)33 b Fb(131)150 444 y Fe(complete-variable)c(\(M-$\))20
|
||||
b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)f(:)33 b Fb(131)150 534 y Fe(copy-backward-word)d(\(\))7
|
||||
(:)g(:)h(:)f(:)33 b Fb(131)150 622 y Fe(copy-backward-word)d(\(\))7
|
||||
b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(130)150 624 y Fe(copy-forward-word)
|
||||
(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(130)150 712 y Fe(copy-forward-word)
|
||||
29 b(\(\))9 b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(130)150
|
||||
711 y Fe(copy-region-as-kill)30 b(\(\))22 b Fc(:)13 b(:)g(:)g(:)g(:)g
|
||||
799 y Fe(copy-region-as-kill)30 b(\(\))22 b Fc(:)13 b(:)g(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
|
||||
b Fb(130)146 1017 y Fs(D)150 1142 y Fe(dabbrev-expand)29
|
||||
b Fb(130)146 1096 y Fs(D)150 1220 y Fe(dabbrev-expand)29
|
||||
b(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
|
||||
b Fb(132)150 1232 y Fe(delete-char)c(\(C-d\))17 b Fc(:)d(:)f(:)g(:)h(:)
|
||||
b Fb(132)150 1310 y Fe(delete-char)c(\(C-d\))17 b Fc(:)d(:)f(:)g(:)h(:)
|
||||
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
|
||||
(:)g(:)g(:)g(:)g(:)32 b Fb(127)150 1322 y Fe(delete-char-or-list)e
|
||||
(:)g(:)g(:)g(:)g(:)32 b Fb(127)150 1399 y Fe(delete-char-or-list)e
|
||||
(\(\))22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
|
||||
g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(131)150 1412 y Fe
|
||||
g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(131)150 1489 y Fe
|
||||
(delete-horizontal-space)31 b(\(\))11 b Fc(:)i(:)g(:)h(:)f(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(129)150
|
||||
1502 y Fe(digit-argument)j(\()p Fd(M-0)p Fe(,)e Fd(M-1)p
|
||||
1579 y Fe(digit-argument)j(\()p Fd(M-0)p Fe(,)e Fd(M-1)p
|
||||
Fe(,)f(...)g Fd(M--)p Fe(\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
|
||||
26 b Fb(130)150 1592 y Fe(display-shell-version)k(\(C-x)d(C-v\))c
|
||||
26 b Fb(130)150 1668 y Fe(display-shell-version)k(\(C-x)d(C-v\))c
|
||||
Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
|
||||
Fb(134)150 1673 y Fe(do-lowercase-version)30 b(\(M-A,)227
|
||||
1761 y(M-B,)c(M-)p Fd(x)p Fe(,)h(...\))10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g
|
||||
Fb(134)150 1749 y Fe(do-lowercase-version)30 b(\(M-A,)227
|
||||
1837 y(M-B,)c(M-)p Fd(x)p Fe(,)h(...\))10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g
|
||||
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
|
||||
g(:)g(:)g(:)g(:)g(:)25 b Fb(132)150 1851 y Fe(downcase-word)k(\(M-l\))
|
||||
g(:)g(:)g(:)g(:)g(:)25 b Fb(132)150 1926 y Fe(downcase-word)k(\(M-l\))
|
||||
12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
|
||||
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(128)150 1941
|
||||
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(128)150 2016
|
||||
y Fe(dump-functions)j(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
|
||||
32 b Fb(133)150 2031 y Fe(dump-macros)c(\(\))7 b Fc(:)14
|
||||
32 b Fb(133)150 2106 y Fe(dump-macros)c(\(\))7 b Fc(:)14
|
||||
b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
|
||||
b Fb(134)150 2121 y Fe(dump-variables)29 b(\(\))17 b
|
||||
b Fb(134)150 2195 y Fe(dump-variables)29 b(\(\))17 b
|
||||
Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(133)150
|
||||
2208 y Fe(dynamic-complete-history)f(\(M-TAB\))13 b Fc(:)i(:)e(:)g(:)g
|
||||
(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(132)146 2514 y Fs(E)150
|
||||
2639 y Fe(edit-and-execute-command)k(\(C-x)c(C-e\))14
|
||||
b Fc(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(134)150 2729
|
||||
2282 y Fe(dynamic-complete-history)f(\(M-TAB\))13 b Fc(:)i(:)e(:)g(:)g
|
||||
(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(132)146 2580 y Fs(E)150
|
||||
2703 y Fe(edit-and-execute-command)k(\(C-x)c(C-e\))14
|
||||
b Fc(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(134)150 2793
|
||||
y Fe(end-kbd-macro)g(\(C-x)d(\)\))13 b Fc(:)h(:)f(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28
|
||||
b Fb(132)150 2819 y Fd(end-of-file)g Fe(\(usually)g(C-d\))21
|
||||
b Fb(132)150 2883 y Fd(end-of-file)g Fe(\(usually)g(C-d\))21
|
||||
b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
|
||||
(:)g(:)35 b Fb(127)150 2909 y Fe(end-of-history)29 b(\(M->\))9
|
||||
(:)g(:)35 b Fb(127)150 2972 y Fe(end-of-history)29 b(\(M->\))9
|
||||
b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(126)150 2999 y
|
||||
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(126)150 3062 y
|
||||
Fe(end-of-line)k(\(C-e\))17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
|
||||
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
|
||||
b Fb(125)150 3086 y Fe(exchange-point-and-mark)f(\(C-x)26
|
||||
b Fb(125)150 3149 y Fe(exchange-point-and-mark)f(\(C-x)26
|
||||
b(C-x\))17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)32
|
||||
b Fb(133)146 3392 y Fs(F)150 3517 y Fe(forward-backward-delete-char)g
|
||||
b Fb(133)146 3446 y Fs(F)150 3570 y Fe(forward-backward-delete-char)g
|
||||
(\(\))15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
|
||||
b Fb(128)150 3607 y Fe(forward-char)e(\(C-f\))14 b Fc(:)h(:)e(:)g(:)g
|
||||
b Fb(128)150 3660 y Fe(forward-char)e(\(C-f\))14 b Fc(:)h(:)e(:)g(:)g
|
||||
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
|
||||
h(:)f(:)g(:)g(:)29 b Fb(125)150 3697 y Fe(forward-search-history)i
|
||||
h(:)f(:)g(:)g(:)29 b Fb(125)150 3749 y Fe(forward-search-history)i
|
||||
(\(C-s\))24 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)38 b Fb(126)150 3784 y Fe(forward-word)28 b(\(M-f\))14
|
||||
(:)38 b Fb(126)150 3837 y Fe(forward-word)28 b(\(M-f\))14
|
||||
b Fc(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
|
||||
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(125)146 4079
|
||||
y Fs(G)150 4204 y Fe(glob-complete-word)h(\(M-g\))16
|
||||
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(125)146 4123
|
||||
y Fs(G)150 4247 y Fe(glob-complete-word)h(\(M-g\))16
|
||||
b Fc(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
|
||||
g(:)g(:)31 b Fb(134)150 4294 y Fe(glob-expand-word)e(\(C-x)e(*\))c
|
||||
g(:)g(:)31 b Fb(134)150 4337 y Fe(glob-expand-word)e(\(C-x)e(*\))c
|
||||
Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
|
||||
(:)g(:)g(:)38 b Fb(134)150 4382 y Fe(glob-list-expansions)30
|
||||
(:)g(:)g(:)38 b Fb(134)150 4424 y Fe(glob-list-expansions)30
|
||||
b(\(C-x)d(g\))13 b Fc(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
|
||||
(:)g(:)h(:)27 b Fb(134)2021 294 y Fs(H)2025 422 y Fe
|
||||
(history-and-alias-expand-line)32 b(\(\))13 b Fc(:)g(:)g(:)h(:)f(:)g(:)
|
||||
|
||||
+13
-5
@@ -4063,11 +4063,12 @@ Cause @var{shell-command} to be executed whenever @var{keyseq} is
|
||||
entered.
|
||||
When @var{shell-command} is executed, the shell sets the
|
||||
@code{READLINE_LINE} variable to the contents of the Readline line
|
||||
buffer and the @code{READLINE_POINT} variable to the current location
|
||||
of the insertion point.
|
||||
If the executed command changes the value of @code{READLINE_LINE} or
|
||||
@code{READLINE_POINT}, those new values will be reflected in the
|
||||
editing state.
|
||||
buffer and the @code{READLINE_POINT} and @code{READLINE_MARK} variables
|
||||
to the current location of the insertion point and the saved insertion
|
||||
point (the @var{mark}), respectively.
|
||||
If the executed command changes the value of any of @code{READLINE_LINE},
|
||||
@code{READLINE_POINT}, or @code{READLINE_MARK}, those new values will be
|
||||
reflected in the editing state.
|
||||
|
||||
@item -X
|
||||
List all key sequences bound to shell commands and the associated commands
|
||||
@@ -6308,6 +6309,13 @@ subsequently reset.
|
||||
The contents of the Readline line buffer, for use
|
||||
with @samp{bind -x} (@pxref{Bash Builtins}).
|
||||
|
||||
@item READLINE_MARK
|
||||
The position of the @var{mark} (saved insertion point) in the
|
||||
Readline line buffer, for use
|
||||
with @samp{bind -x} (@pxref{Bash Builtins}).
|
||||
The characters between the insertion point and the mark are often
|
||||
called the @var{region}.
|
||||
|
||||
@item READLINE_POINT
|
||||
The position of the insertion point in the Readline line buffer, for use
|
||||
with @samp{bind -x} (@pxref{Bash Builtins}).
|
||||
|
||||
@@ -113,6 +113,7 @@
|
||||
\entry{PWD}{84}{\code {PWD}}
|
||||
\entry{RANDOM}{84}{\code {RANDOM}}
|
||||
\entry{READLINE_LINE}{84}{\code {READLINE_LINE}}
|
||||
\entry{READLINE_MARK}{84}{\code {READLINE_MARK}}
|
||||
\entry{READLINE_POINT}{84}{\code {READLINE_POINT}}
|
||||
\entry{REPLY}{84}{\code {REPLY}}
|
||||
\entry{SECONDS}{84}{\code {SECONDS}}
|
||||
|
||||
@@ -167,6 +167,7 @@
|
||||
\initial {R}
|
||||
\entry{\code {RANDOM}}{84}
|
||||
\entry{\code {READLINE_LINE}}{84}
|
||||
\entry{\code {READLINE_MARK}}{84}
|
||||
\entry{\code {READLINE_POINT}}{84}
|
||||
\entry{\code {REPLY}}{84}
|
||||
\entry{\code {revert-all-at-newline}}{117}
|
||||
|
||||
+838
-837
File diff suppressed because it is too large
Load Diff
+1963
-1955
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -1,6 +1,6 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.22.4
|
||||
%%CreationDate: Mon Jan 6 08:53:35 2020
|
||||
%%CreationDate: Wed Jan 29 14:04:11 2020
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%DocumentSuppliedResources: procset grops 1.22 4
|
||||
|
||||
+4
-4
@@ -1,11 +1,11 @@
|
||||
@ignore
|
||||
Copyright (C) 1988-2019 Free Software Foundation, Inc.
|
||||
Copyright (C) 1988-2020 Free Software Foundation, Inc.
|
||||
@end ignore
|
||||
|
||||
@set LASTCHANGE Tue Nov 26 11:14:58 EST 2019
|
||||
@set LASTCHANGE Wed Jan 29 13:59:06 EST 2020
|
||||
|
||||
@set EDITION 5.0
|
||||
@set VERSION 5.0
|
||||
|
||||
@set UPDATED 26 November 2019
|
||||
@set UPDATED-MONTH November 2019
|
||||
@set UPDATED 29 January 2020
|
||||
@set UPDATED-MONTH January 2020
|
||||
|
||||
@@ -103,7 +103,7 @@ INC = -I. -I.. -I$(topdir) -I$(topdir)/lib -I$(topdir)/builtins -I${srcdir} \
|
||||
ALLPROG = print truefalse sleep finfo logname basename dirname fdflags \
|
||||
tty pathchk tee head mkdir rmdir mktemp printenv id whoami \
|
||||
uname sync push ln unlink realpath strftime mypid setpgid seq rm
|
||||
OTHERPROG = necho hello cat pushd stat
|
||||
OTHERPROG = necho hello cat pushd stat accept
|
||||
|
||||
all: $(SHOBJ_STATUS)
|
||||
|
||||
@@ -133,6 +133,9 @@ hello: hello.o
|
||||
truefalse: truefalse.o
|
||||
$(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ truefalse.o $(SHOBJ_LIBS)
|
||||
|
||||
accept: accept.o
|
||||
$(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ accept.o $(SHOBJ_LIBS)
|
||||
|
||||
sleep: sleep.o
|
||||
$(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ sleep.o $(SHOBJ_LIBS)
|
||||
|
||||
@@ -275,6 +278,7 @@ uninstall: uninstall-$(SHOBJ_STATUS)
|
||||
|
||||
print.o: print.c
|
||||
truefalse.o: truefalse.c
|
||||
accept.o: accept.c
|
||||
sleep.o: sleep.c
|
||||
finfo.o: finfo.c
|
||||
logname.o: logname.c
|
||||
|
||||
@@ -0,0 +1,234 @@
|
||||
/* accept - listen for and accept a remote network connection on a given port */
|
||||
|
||||
/*
|
||||
Copyright (C) 2020 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Bash.
|
||||
Bash is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Bash is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Bash. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#if defined (HAVE_UNISTD_H)
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include "bashtypes.h"
|
||||
#include <errno.h>
|
||||
#include <time.h>
|
||||
#include "typemax.h"
|
||||
|
||||
#include <sys/socket.h>
|
||||
#include <arpa/inet.h>
|
||||
#include <netinet/in.h>
|
||||
|
||||
#include "loadables.h"
|
||||
|
||||
static int accept_bind_variable (char *, int);
|
||||
|
||||
int
|
||||
accept_builtin (list)
|
||||
WORD_LIST *list;
|
||||
{
|
||||
WORD_LIST *l;
|
||||
SHELL_VAR *v;
|
||||
intmax_t iport;
|
||||
int opt;
|
||||
char *tmoutarg, *fdvar, *rhostvar, *rhost;
|
||||
unsigned short uport;
|
||||
int servsock, clisock;
|
||||
struct sockaddr_in server, client;
|
||||
socklen_t clientlen;
|
||||
struct timeval timeval;
|
||||
struct linger linger = { 0, 0 };
|
||||
|
||||
rhostvar = tmoutarg = fdvar = rhost = (char *)NULL;
|
||||
|
||||
reset_internal_getopt ();
|
||||
while ((opt = internal_getopt (list, "r:t:v:")) != -1)
|
||||
{
|
||||
switch (opt)
|
||||
{
|
||||
case 'r':
|
||||
rhostvar = list_optarg;
|
||||
break;
|
||||
case 't':
|
||||
tmoutarg = list_optarg;
|
||||
break;
|
||||
case 'v':
|
||||
fdvar = list_optarg;
|
||||
break;
|
||||
CASE_HELPOPT;
|
||||
default:
|
||||
builtin_usage ();
|
||||
return (EX_USAGE);
|
||||
}
|
||||
}
|
||||
|
||||
list = loptend;
|
||||
|
||||
/* Validate input and variables */
|
||||
if (tmoutarg)
|
||||
{
|
||||
long ival, uval;
|
||||
opt = uconvert (tmoutarg, &ival, &uval);
|
||||
if (opt == 0 || ival < 0 || uval < 0)
|
||||
{
|
||||
builtin_error ("%s: invalid timeout specification", tmoutarg);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
timeval.tv_sec = ival;
|
||||
timeval.tv_usec = uval;
|
||||
/* XXX - should we warn if ival == uval == 0 ? */
|
||||
}
|
||||
|
||||
if (list == 0)
|
||||
{
|
||||
builtin_usage ();
|
||||
return (EX_USAGE);
|
||||
}
|
||||
|
||||
if (legal_number (list->word->word, &iport) == 0 || iport < 0 || iport > TYPE_MAXIMUM (unsigned short))
|
||||
{
|
||||
builtin_error ("%s: invalid port number", list->word->word);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
uport = (unsigned short)iport;
|
||||
|
||||
if (fdvar == 0)
|
||||
fdvar = "ACCEPT_FD";
|
||||
|
||||
unbind_variable (fdvar);
|
||||
if (rhostvar)
|
||||
unbind_variable (rhostvar);
|
||||
|
||||
if ((servsock = socket (AF_INET, SOCK_STREAM, IPPROTO_IP)) < 0)
|
||||
{
|
||||
builtin_error ("cannot create socket: %s", strerror (errno));
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
|
||||
memset ((char *)&server, 0, sizeof (server));
|
||||
server.sin_family = AF_INET;
|
||||
server.sin_port = htons(uport);
|
||||
server.sin_addr.s_addr = htonl(INADDR_ANY);
|
||||
|
||||
if (bind (servsock, (struct sockaddr *)&server, sizeof (server)) < 0)
|
||||
{
|
||||
builtin_error ("socket bind failure: %s", strerror (errno));
|
||||
close (servsock);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
|
||||
opt = 1;
|
||||
setsockopt (servsock, SOL_SOCKET, SO_REUSEADDR, (void *)&opt, sizeof (opt));
|
||||
setsockopt (servsock, SOL_SOCKET, SO_LINGER, (void *)&linger, sizeof (linger));
|
||||
|
||||
if (listen (servsock, 1) < 0)
|
||||
{
|
||||
builtin_error ("listen failure: %s", strerror (errno));
|
||||
close (servsock);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
|
||||
if (tmoutarg)
|
||||
{
|
||||
fd_set iofds;
|
||||
|
||||
FD_ZERO(&iofds);
|
||||
FD_SET(servsock, &iofds);
|
||||
|
||||
opt = select (servsock+1, &iofds, 0, 0, &timeval);
|
||||
if (opt < 0)
|
||||
builtin_error ("select failure: %s", strerror (errno));
|
||||
if (opt <= 0)
|
||||
{
|
||||
close (servsock);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
}
|
||||
|
||||
clientlen = sizeof (client);
|
||||
if ((clisock = accept (servsock, (struct sockaddr *)&client, &clientlen)) < 0)
|
||||
{
|
||||
builtin_error ("client accept failure: %s", strerror (errno));
|
||||
close (servsock);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
|
||||
close (servsock);
|
||||
|
||||
accept_bind_variable (fdvar, clisock);
|
||||
if (rhostvar)
|
||||
{
|
||||
rhost = inet_ntoa (client.sin_addr);
|
||||
v = builtin_bind_variable (rhostvar, rhost, 0);
|
||||
if (v == 0 || readonly_p (v) || noassign_p (v))
|
||||
builtin_error ("%s: cannot set variable", rhostvar);
|
||||
}
|
||||
|
||||
return (EXECUTION_SUCCESS);
|
||||
}
|
||||
|
||||
static int
|
||||
accept_bind_variable (varname, intval)
|
||||
char *varname;
|
||||
int intval;
|
||||
{
|
||||
SHELL_VAR *v;
|
||||
char ibuf[INT_STRLEN_BOUND (int) + 1], *p;
|
||||
|
||||
p = fmtulong (intval, 10, ibuf, sizeof (ibuf), 0);
|
||||
v = builtin_bind_variable (varname, p, 0);
|
||||
if (v == 0 || readonly_p (v) || noassign_p (v))
|
||||
builtin_error ("%s: cannot set variable", varname);
|
||||
return (v != 0);
|
||||
}
|
||||
|
||||
char *accept_doc[] = {
|
||||
"Accept a network connection on a specified port.",
|
||||
""
|
||||
"This builtin allows a bash script to act as a TCP/IP server.",
|
||||
"",
|
||||
"Options, if supplied, have the following meanings:",
|
||||
" -t timeout wait TIMEOUT seconds for a connection. TIMEOUT may",
|
||||
" be a decimal number including a fractional portion",
|
||||
" -v varname store the numeric file descriptor of the connected",
|
||||
" socket into VARNAME. The default VARNAME is ACCEPT_FD",
|
||||
" -r rhost store the IP address of the remote host into the shell",
|
||||
" variable RHOST, in dotted-decimal notation",
|
||||
"",
|
||||
"If successful, the shell variable ACCEPT_FD, or the variable named by the",
|
||||
"-v option, will be set to the fd of the connected socket, suitable for",
|
||||
"use as 'read -u$ACCEPT_FD'. RHOST, if supplied, will hold the IP address",
|
||||
"of the remote client. The return status is 0.",
|
||||
"",
|
||||
"On failure, the return status is 1 and ACCEPT_FD (or VARNAME) and RHOST,",
|
||||
"if supplied, will be unset.",
|
||||
"",
|
||||
"The server socket fd will be closed before accept returns.",
|
||||
(char *) NULL
|
||||
};
|
||||
|
||||
struct builtin accept_struct = {
|
||||
"accept", /* builtin name */
|
||||
accept_builtin, /* function implementing the builtin */
|
||||
BUILTIN_ENABLED, /* initial flags for builtin */
|
||||
accept_doc, /* array of long documentation strings. */
|
||||
"accept [-t timeout] [-v varname] [-r addrvar ] port", /* usage synopsis; becomes short_doc */
|
||||
0 /* reserved for internal use */
|
||||
};
|
||||
@@ -640,6 +640,7 @@ history_truncate_file (const char *fname, int lines)
|
||||
|
||||
if (rv != 0)
|
||||
{
|
||||
rv = errno;
|
||||
if (tempname)
|
||||
unlink (tempname);
|
||||
history_lines_written_to_file = 0;
|
||||
@@ -787,6 +788,7 @@ mmap_error:
|
||||
|
||||
if (rv != 0)
|
||||
{
|
||||
rv = errno;
|
||||
if (tempname)
|
||||
unlink (tempname);
|
||||
history_lines_written_to_file = 0;
|
||||
|
||||
Reference in New Issue
Block a user