bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bash manual] suggestions, fixes, license


From: Aaron S. Hawley
Subject: Re: [bash manual] suggestions, fixes, license
Date: Thu, 12 Jun 2003 15:34:03 -0400 (EDT)

sorry, here's the patch:

*** bashref.texi        2003-06-11 17:27:38-04  1.1
--- bashref.texi        2003-06-12 15:17:09-04
***************
*** 17,34 ****
  @finalout
  @end iftex

- @setchapternewpage odd
  @defcodeindex bt
  @defcodeindex rw
  @set BashFeatures

! @ifinfo
! @dircategory Utilities
  @direntry
!      * Bash: (bash).                     The GNU Bourne-Again SHell.
  @end direntry

! @format
  This text is a brief description of the features that are present in
  the Bash shell.

--- 17,32 ----
  @finalout
  @end iftex

  @defcodeindex bt
  @defcodeindex rw
  @set BashFeatures

! @dircategory Basics
  @direntry
! * Bash: (bash).                 The GNU Bourne-Again SHell.
  @end direntry

! @copying
  This text is a brief description of the features that are present in
  the Bash shell.

***************
*** 36,65 ****
  of @cite{The GNU Bash Reference Manual},
  for @code{Bash}, Version @value{VERSION}.

! Copyright (C) 1991-2002 Free Software Foundation, Inc.

! Permission is granted to make and distribute verbatim copies of
! this manual provided the copyright notice and this permission notice
! are preserved on all copies.
!
! @ignore
! Permission is granted to process this file through TeX and print the
! results, provided the printed document carries copying permission
! notice identical to this one except for the removal of this paragraph
! (this paragraph not being relevant to the printed manual).
!
! @end ignore
! Permission is granted to copy and distribute modified versions of this
! manual under the conditions for verbatim copying, provided that the entire
! resulting derived work is distributed under the terms of a permission
! notice identical to this one.
!
! Permission is granted to copy and distribute translations of this manual
! into another language, under the above conditions for modified versions,
! except that this permission notice may be stated in a translation approved
! by the Free Software Foundation.
! @end format
! @end ifinfo

  @titlepage
  @title Bash Reference Manual
--- 34,55 ----
  of @cite{The GNU Bash Reference Manual},
  for @code{Bash}, Version @value{VERSION}.

! Copyright (C) 1991-2003 Free Software Foundation, Inc.

! @quotation
! Permission is granted to copy, distribute and/or modify this document
! under the terms of the GNU Free Documentation License, Version 1.1 or
! any later version published by the Free Software Foundation; with no
! Invariant Sections, with the Front-Cover Texts being ``A GNU Manual,''
! and with the Back-Cover Texts as in (a) below.  A copy of the
! license is included in the section entitled ``GNU Free Documentation
! License.''
!
! (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
! this GNU Manual, like GNU software.  Copies published by the Free
! Software Foundation raise funds for GNU development.''
! @end quotation
! @end copying

  @titlepage
  @title Bash Reference Manual
***************
*** 70,98 ****
  @author Brian Fox, Free Software Foundation
  @page
  @vskip 0pt plus 1filll
! Copyright @copyright{} 1991-2002 Free Software Foundation, Inc.
!
! Permission is granted to make and distribute verbatim copies of
! this manual provided the copyright notice and this permission notice
! are preserved on all copies.
!
! Permission is granted to copy and distribute modified versions of this
! manual under the conditions for verbatim copying, provided that the entire
! resulting derived work is distributed under the terms of a permission
! notice identical to this one.
!
! Permission is granted to copy and distribute translations of this manual
! into another language, under the above conditions for modified versions,
! except that this permission notice may be stated in a translation approved
! by the Free Software Foundation.
  @end titlepage

! @ifinfo
  @node Top, Introduction, (dir), (dir)
  @top Bash Features
! @end ifinfo

! @ifinfo
  This text is a brief description of the features that are present in
  the Bash shell.

--- 60,74 ----
  @author Brian Fox, Free Software Foundation
  @page
  @vskip 0pt plus 1filll
! @insertcopying
  @end titlepage

! @ifnottex
  @node Top, Introduction, (dir), (dir)
  @top Bash Features
! @end ifnottex

! @ifnottex
  This text is a brief description of the features that are present in
  the Bash shell.

***************
*** 145,150 ****
--- 121,128 ----
                                                between Bash and historical
                                                versions of /bin/sh.

+ * GNU Free Documentation License::  License for copying this manual.
+
  * Builtin Index::             Index of Bash builtin commands.

  * Reserved Word Index::               Index of Bash reserved words.
***************
*** 157,163 ****
  * Concept Index::             General index for concepts described in
                                this manual.
  @end menu
! @end ifinfo

  @node Introduction
  @chapter Introduction
--- 135,141 ----
  * Concept Index::             General index for concepts described in
                                this manual.
  @end menu
! @end ifnottex

  @node Introduction
  @chapter Introduction
***************
*** 174,183 ****
  for the @sc{gnu} operating system.
  The name is an acronym for the @samp{Bourne-Again SHell},
  a pun on Stephen Bourne, the author of the direct ancestor of
! the current Unix shell @code{/bin/sh},
  which appeared in the Seventh Edition Bell Labs Research version
  of Unix.

  Bash is largely compatible with @code{sh} and incorporates useful
  features from the Korn shell @code{ksh} and the C shell @code{csh}.
  It is intended to be a conformant implementation of the @sc{ieee}
--- 152,165 ----
  for the @sc{gnu} operating system.
  The name is an acronym for the @samp{Bourne-Again SHell},
  a pun on Stephen Bourne, the author of the direct ancestor of
! the current Unix shell @code{sh},
  which appeared in the Seventh Edition Bell Labs Research version
  of Unix.

+ Bash was originally written by Brian Fox of the Free Software
+ Foundation.  The current developer and maintainer is Chet Ramey
+ of Case Western Reserve University.
+
  Bash is largely compatible with @code{sh} and incorporates useful
  features from the Korn shell @code{ksh} and the C shell @code{csh}.
  It is intended to be a conformant implementation of the @sc{ieee}
***************
*** 185,243 ****
  It offers functional improvements over @code{sh} for both interactive and
  programming use.

! While the @sc{gnu} operating system provides other shells, including
! a version of @code{csh}, Bash is the default shell.
! Like other @sc{gnu} software, Bash is quite portable.  It currently runs
! on nearly every version of Unix and a few other operating systems @minus{}
! independently-supported ports exist for @sc{ms-dos}, @sc{os/2},
! Windows @sc{95/98}, and Windows @sc{nt}.

  @node What is a shell?
  @section What is a shell?

! At its base, a shell is simply a macro processor that executes
! commands.  A Unix shell is both a command interpreter, which
! provides the user interface to the rich set of @sc{gnu} utilities,
! and a programming language, allowing these utilitites to be
! combined.  Files containing commands can be created, and become
! commands themselves.  These new commands have the same status as
! system commands in directories such as @file{/bin}, allowing users
! or groups to establish custom environments.
!
! A shell allows execution of @sc{gnu} commands, both synchronously and
! asynchronously.
! The shell waits for synchronous commands to complete before accepting
! more input; asynchronous commands continue to execute in parallel
! with the shell while it reads and executes additional commands.
! The @dfn{redirection} constructs permit
! fine-grained control of the input and output of those commands.
! Moreover, the shell allows control over the contents of commands'
! environments.
! Shells may be used interactively or non-interactively: they accept
! input typed from the keyboard or from a file.
!
! Shells also provide a small set of built-in
! commands (@dfn{builtins}) implementing functionality impossible
! or inconvenient to obtain via separate utilities.
! For example, @code{cd}, @code{break}, @code{continue}, and
! @code{exec}) cannot be implemented outside of the shell because
! they directly manipulate the shell itself.
! The @code{history}, @code{getopts}, @code{kill}, or @code{pwd}
! builtins, among others, could be implemented in separate utilities,
! but they are more convenient to use as builtin commands.
! All of the shell builtins are described in
! subsequent sections.

  While executing commands is essential, most of the power (and
  complexity) of shells is due to their embedded programming
  languages.  Like any high-level language, the shell provides
  variables, flow control constructs, quoting, and functions.

! Shells offer features geared specifically for
! interactive use rather than to augment the programming language.
! These interactive features include job control, command line
! editing, history and aliases.  Each of these features is
! described in this manual.

  @node Definitions
  @chapter Definitions
--- 167,235 ----
  It offers functional improvements over @code{sh} for both interactive and
  programming use.

! While the @sc{gnu} operating system provides other shells, including a
! version of @code{csh}, Bash is the default shell.  Like other @sc{gnu}
! software, Bash is quite portable.  It currently runs on nearly every
! version of Unix and a few other operating systems @minus{}
! independently-supported ports exist for @sc{ms-dos}, @sc{os/2}, Mac
! @sc{OS X} and Windows platforms.

  @node What is a shell?
  @section What is a shell?

! At its base, a shell is simply a macro processor that executes commands.
! A macro processor, an increasingly broad term, is generally recognized
! as a functionality where text and symbols are expanded to create larger
! expressions.  This aspect of shells decreases the necessary typing by
! humans.
!
! A shell in Unix (and the @sc{gnu} system) is both a command interpreter
! and a programming language.  As a command interpreter the shell provides
! the user interface to the rich set of @sc{gnu} utilities.  As a
! programming language these utilitites can be combined in to single
! tasks.
!
! The shell programming language code and commands can be placed in files.
! The files containing shell commands can be created, and become commands
! themselves.  These new commands have the same status as other system
! commands in directories such as @file{/bin}.  Users or groups are
! consequently able to establish custom environments for their common
! tasks.
!
! Shells may be used interactively or non-interactively.  They can wait
! patiently for input typed from the keyboard or quickly process commands
! from a file.  Non-interactive use is also called ``batch'' processing,
! because batches of commands are executed.
!
! Beyond improving human interaction with computers, shells provide
! control over command execution.  A shell allows execution of @sc{gnu}
! commands, both synchronously and asynchronously.  The shell waits for
! synchronous commands to complete before accepting more input;
! asynchronous commands continue to execute in parallel with the shell
! while the shell reads and executes additional commands.
!
! Shells provide control over the input and outputs of commands.  The
! @dfn{redirection} constructs permit fine-grained control of the input
! and output of those commands.  Moreover, the shell allows control over
! the contents of a command's environment.
!
! Shells also provide a small set of built-in commands (@dfn{builtins})
! implementing functionality impossible or inconvenient to obtain via
! separate utilities.  For example, @code{cd}, @code{break},
! @code{continue}, and @code{exec}) cannot be implemented outside of the
! shell because they directly manipulate the shell itself.  The
! @code{history}, @code{getopts}, @code{kill}, or @code{pwd} builtins,
! among others, could be implemented in separate utilities, but they are
! more convenient to use as builtin commands.

  While executing commands is essential, most of the power (and
  complexity) of shells is due to their embedded programming
  languages.  Like any high-level language, the shell provides
  variables, flow control constructs, quoting, and functions.

! Shells offer features geared specifically for interactive use rather
! than to augment the programming language.  These interactive features
! include job control, command line editing, history and aliases.

  @node Definitions
  @chapter Definitions
***************
*** 247,253 ****

  @item POSIX
  @cindex POSIX
! A family of open system standards based on Unix.  Bash
  is concerned with @sc{posix} 1003.2, the Shell and Tools Standard.

  @item blank
--- 239,245 ----

  @item POSIX
  @cindex POSIX
! A family of open system standards based on UNIX.  Bash
  is concerned with @sc{posix} 1003.2, the Shell and Tools Standard.

  @item blank
***************
*** 310,315 ****
--- 302,314 ----
  A @code{control operator} or a @code{redirection operator}.
  @xref{Redirections}, for a list of redirection operators.

+ @item pipeline
+ @cindex pipeline
+ @cindex commands, pipelines
+
+ A @code{pipeline} is a sequence of simple commands separated by
+ @samp{|}.
+
  @item process group
  @cindex process group
  A collection of related processes each having the same process
***************
*** 357,364 ****
  Bash is an acronym for @samp{Bourne-Again SHell}.
  The Bourne shell is
  the traditional Unix shell originally written by Stephen Bourne.
! All of the Bourne shell builtin commands are available in Bash,
! and the rules for evaluation and quoting are taken from the @sc{posix}
  1003.2 specification for the `standard' Unix shell.

  This chapter briefly summarizes the shell's `building blocks':
--- 356,363 ----
  Bash is an acronym for @samp{Bourne-Again SHell}.
  The Bourne shell is
  the traditional Unix shell originally written by Stephen Bourne.
! All of the Bourne shell builtin commands are available in Bash.
! The rules for evaluation and quoting are taken from the @sc{posix}
  1003.2 specification for the `standard' Unix shell.

  This chapter briefly summarizes the shell's `building blocks':
***************
*** 623,633 ****
  @subsection Simple Commands
  @cindex commands, simple

! A simple command is the kind of command encountered most often.
! It's just a sequence of words separated by @code{blank}s, terminated
  by one of the shell's control operators (@pxref{Definitions}).  The
! first word generally specifies a command to be executed, with the
! rest of the words being that command's arguments.

  The return status (@pxref{Exit Status}) of a simple command is
  its exit status as provided
--- 622,632 ----
  @subsection Simple Commands
  @cindex commands, simple

! A simple command is the kind of command encountered most often.  It is
! recognized as a sequence of words separated by @code{blank}s, terminated
  by one of the shell's control operators (@pxref{Definitions}).  The
! first word generally specifies a command to be executed, with the rest
! of the words being that command's arguments.

  The return status (@pxref{Exit Status}) of a simple command is
  its exit status as provided
***************
*** 5942,5949 ****
  the various supported platforms.  The distribution supports the
  @sc{gnu} operating systems, nearly every version of Unix, and several
  non-Unix systems such as BeOS and Interix.
! Other independent ports exist for
! @sc{ms-dos}, @sc{os/2}, Windows @sc{95/98}, and Windows @sc{nt}.

  @menu
  * Basic Installation::        Installation instructions.
--- 5941,5948 ----
  the various supported platforms.  The distribution supports the
  @sc{gnu} operating systems, nearly every version of Unix, and several
  non-Unix systems such as BeOS and Interix.
! Other independent ports exist for @sc{ms-dos}, @sc{os/2}, Mac
! @sc{OS X} and Windows platforms.

  @menu
  * Basic Installation::        Installation instructions.
***************
*** 6475,6481 ****
  Bash has one-dimensional array variables (@pxref{Arrays}), and the
  appropriate variable expansions and assignment syntax to use them.
  Several of the Bash builtins take options to act on arrays.
! Bash provides a number of built-in array variables.

  @item
  The @code{$'@dots{}'} quoting syntax, which expands ANSI-C
--- 6474,6480 ----
  Bash has one-dimensional array variables (@pxref{Arrays}), and the
  appropriate variable expansions and assignment syntax to use them.
  Several of the Bash builtins take options to act on arrays.
! Bash provides a number of builtin array variables.

  @item
  The @code{$'@dots{}'} quoting syntax, which expands ANSI-C
***************
*** 6840,6845 ****
--- 6839,6848 ----
  The SVR4.2 shell behaves differently when invoked as @code{jsh}
  (it turns on job control).
  @end itemize
+
+ @appendix Copying This Manual
+
+ @include fdl.texi

  @node Builtin Index
  @unnumbered Index of Shell Builtin Commands

Attachment: bashref.texi-suggestions.diff-c
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]