aboutsummaryrefslogtreecommitdiffstats
path: root/doc/FAQ
diff options
context:
space:
mode:
Diffstat (limited to 'doc/FAQ')
-rw-r--r--doc/FAQ48
1 files changed, 28 insertions, 20 deletions
diff --git a/doc/FAQ b/doc/FAQ
index 9ef5aa1..d191cb4 100644
--- a/doc/FAQ
+++ b/doc/FAQ
@@ -1,4 +1,4 @@
-This is the Bash FAQ, version 2.11, for Bash version 2.02.
+This is the Bash FAQ, version 2.13, for Bash version 2.02.
This document contains a set of frequently-asked questions concerning
Bash, the GNU Bourne-Again Shell. Bash is a freely-available command
@@ -150,9 +150,10 @@ More information appears in the file `INSTALL' in the distribution.
5) Will bash run on operating systems other than Unix?
Configuration specifics for Unix-like systems such as QNX and
-LynxOS are included in the distribution. Previous versions of
-bash have been ported to Minix, but I don't believe anyone has
-built bash-2.x on Minix yet.
+LynxOS are included in the distribution. Bash-2.02 should
+compile and run on Minix 2.0 (patches were contributed), but I
+don't believe anyone has built bash-2.x on earlier Minix versions
+yet.
Bash has been ported to versions of Windows implementing the Win32
programming interface. This includes Windows 95 and Windows NT.
@@ -174,9 +175,9 @@ The Cygnus port works only on Intel machines. There is a port of bash
ftp://ftp.gnustep.org//pub/win32/bash-alpha-nt-1.01.tar.gz
-Softway Systems has ported bash-2.01.1 to their OpenNT system, a
-Unix subsystem for NT that replaces the Microsoft POSIX subsystem.
-Check out http://www.opennt.com for more information.
+Softway Systems has ported bash-2.01.1 to their Interix (nee OpenNT)
+system, a Unix subsystem for NT that replaces the Microsoft POSIX
+subsystem. Check out http://www.interix.com for more information.
D. J. Delorie has ported bash-1.14.7 to run under MS-DOS, as part of
the DJGPP project. For more information on the project, see
@@ -403,6 +404,8 @@ Things bash has that sh does not:
the select compound command and reserved word
new $'...' and $"..." quoting
the $(...) form of command substitution
+ the $(<filename) form of command substitution, equivalent to
+ $(cat filename)
the ${#param} parameter value length operator
the ${!param} indirect parameter expansion operator
the ${param:length[:offset]} parameter substring operator
@@ -413,7 +416,7 @@ Things bash has that sh does not:
TIMEFORMAT, PPID, PWD, OLDPWD, SHLVL, RANDOM, SECONDS,
LINENO, HISTCMD, HOSTTYPE, OSTYPE, MACHTYPE, HOSTNAME,
ENV, PS3, PS4, DIRSTACK, PIPESTATUS, HISTSIZE, HISTFILE,
- HISTFILESIZE, HISTCONTROL, HISTIGNORE, GLOBIGNORE,
+ HISTFILESIZE, HISTCONTROL, HISTIGNORE, GLOBIGNORE, GROUPS,
PROMPT_COMMAND, FCEDIT, FIGNORE, IGNOREEOF, INPUTRC,
SHELLOPTS, OPTERR, HOSTFILE, TMOUT, histchars, auto_resume
DEBUG trap
@@ -436,6 +439,7 @@ Things bash has that sh does not:
brace expansion
tilde expansion
arithmetic expansion with $((...)) and `let' builtin
+ the `[[...]]' extended conditional command
process substitution
aliases and alias/unalias builtins
local variables in functions and `local' builtin
@@ -444,9 +448,14 @@ Things bash has that sh does not:
csh-like history expansion
other new bash builtins: bind, command, builtin, declare/typeset,
dirs, enable, fc, help, history, logout,
- popd, pushd, disown, shopt
+ popd, pushd, disown, shopt, printf
exported functions
filename generation when using output redirection (command >a*)
+ POSIX.2-style globbing character classes
+ POSIX.2-style globbing equivalence classes
+ POSIX.2-style globbing collating symbols
+ egrep-like extended pattern matching operators
+ case-insensitive pattern matching and globbing
variable assignments preceding commands affect only that command,
even for builtins and functions
posix mode
@@ -493,7 +502,7 @@ Things bash has or uses that ksh88 does not:
HISTFILESIZE, HISTIGNORE, HISTCONTROL, PROMPT_COMMAND,
IGNOREEOF, FIGNORE, INPUTRC, HOSTFILE, DIRSTACK,
PIPESTATUS, HOSTNAME, OPTERR, SHELLOPTS, GLOBIGNORE,
- histchars, auto_resume
+ GROUPS, histchars, auto_resume
prompt expansion with backslash escapes and command substitution
redirection: &> (stdout and stderr)
more extensive and extensible editing and completion
@@ -504,15 +513,18 @@ Things bash has or uses that ksh88 does not:
-o histexpand/-o interactive-comments/-o notify/-o physical/
-o posix/-o hashall/-o onecmd/-h/-B/-C/-b/-H/-P, set +o,
suspend, trap -l, type, typeset -a/-F/-p, ulimit -u,
- umask -S, alias -p, shopt, disown
+ umask -S, alias -p, shopt, disown, printf
`!' csh-style history expansion
+ POSIX.2-style globbing character classes
+ POSIX.2-style globbing equivalence classes
+ POSIX.2-style globbing collating symbols
+ egrep-like extended pattern matching operators
+ case-insensitive pattern matching and globbing
+ `**' arithmetic operator to do exponentiation
Things ksh88 has or uses that bash does not:
- new version of test: [[...]]
tracked aliases
- $(<file)
variables: ERRNO, FPATH, COLUMNS, LINES, EDITOR, VISUAL
- extended pattern matching with egrep-style pattern lists
co-processes (|&, >&p, <&p)
weirdly-scoped functions
typeset +f to list all function names without definitions
@@ -547,7 +559,7 @@ New things in ksh-93 not in bash-2.02:
variables: .sh.edchar, .sh.edmode, .sh.edcol, .sh.edtext, HISTEDIT,
.sh.version, .sh.name, .sh.subscript, .sh.value
backreferences in pattern matching
- print -f (bash has a loadable version)
+ print -f (bash has a loadable version of print and the printf builtin)
`fc' has been renamed to `hist'
read -t/-d
`.' can execute shell functions
@@ -712,12 +724,8 @@ Most, however, can be emulated with very little trouble.
ksh-88 feature Bash equivalent
-------------- ---------------
-[[...]] can usually use [...]; minor differences (no
- pattern matching, for one)
compiled-in aliases set up aliases in .bashrc; some ksh aliases are
bash builtins (hash, history, type)
-$(<file) $(cat file)
-extended patterns no good substitute
coprocesses named pipe pairs (one for read, one for write)
typeset +f declare -F
cd, print, whence function substitutes in examples/functions/kshenv
@@ -1146,7 +1154,7 @@ is 1-56592-147-X. Look for it in fine bookstores near you. This book
covers bash-1.14, but has an appendix describing some of the new features
in bash-2.0.
-A second edition of this book is available, just published in January, 1998.
+A second edition of this book is available, published in January, 1998.
The ISBN number is 1-56592-347-2. Look for it in the same fine bookstores
or on the web.