Differences between revisions 32 and 33
Revision 32 as of 2016-01-05 11:34:34
Size: 2779
Editor: geirha
Comment: Adding nocasematch
Revision 33 as of 2016-06-28 15:42:19
Size: 2814
Editor: geirha
Comment: Listing major.minor (year) instead of which alpha versions the features appeared
Deletions are marked like this. Additions are marked like this.
Line 24: Line 24:
||wait -n||4.3-alpha||
||test -R||4.3-alpha||
||declare/typeset -n and associated changes to ${!ref} and for..in||4.3-alpha||
||array[-idx] (in assignments, read, unset, etc)||4.3-alpha||
||\uXXXX and \UXXXXXXXX||4.2-alpha||
||declare -g||4.2-alpha||
||test -v||4.2-alpha||
||printf %(fmt)T||4.2-alpha||
||${array[-idx]} and ${var:start:-len}||4.2-alpha||
||lastpipe (shopt)||4.2-alpha
||
||read -N||4.1-alpha||
||{var}> or {var}< etc. (FD variable assignment)||4.1-alpha||
||s
yslog history (compile option)||4.1-alpha||
||BASH_XTRACEFD||4.1-alpha||
||;& and ;;& fall-throughs for case||4.0-alpha||
||associative arrays||4.0-alpha||
||&>> and |&||4.0-alpha||
||command_not_found_handle (function)||4.0-alpha||
||coproc (keyword)||4.0-alpha||
||globstar (shopt)||4.0-alpha
||
||mapfile/readarray (builtin)||4.0-alpha||
||${var,[,]} and ${var&#94;[&#94;]}||4.0-alpha||
||{009..012} (leading zeros in brace expansions)||4.0-alpha||
||{x..y..incr}||4.0-alpha||
||read -t 0||4.0-alpha||
||read -i||4.0-alpha
||
||x+=string array+=(string)||3.1-alpha1||
||printf -v var||3.1-alpha1||
||nocasematc
h (shopt)||3.1-alpha1||
||{x..y}||3.0-alpha||
||${!array[@]}||3.0-alpha||
||[[ =~||3.0-alpha||
||printf %q produces $'...'||2.05b-alpha1||
||<<<||2.05b-alpha1||
||i++||2.04-devel||
||for ((;;))||2.04-devel||
||/dev/fd/N, /dev/tcp/host/port, etc.||2.04-devel||
||read
-t, -n, -d and -s||2.04-devel||
||a=(*.txt) file expansion||2.03-alpha||
||extglob (shopt)||2.02-alpha1
||
||[[||2.02-alpha1||
||printf (builtin)||2.02-alpha1||
||$(< filename)||2.02-alpha1||
||** (exponentiation)||2.02-alpha1||
||\xNNN||2.02-alpha1||
||(( ))||2.0-beta2||
||wait -n||4.3 (2014)||
||test -R||4.3 (2014)||
||declare/typeset -n and associated changes to ${!ref} and for..in||4.3 (2014)||
||array[-idx] (in assignments, read, unset, etc)||4.3 (2014)||
||\uXXXX and \UXXXXXXXX||4.2 (2011)||
||declare -g||4.2 (2011)||
||test -v||4.2 (2011)||
||printf %(fmt)T||4.2 (2011)||
||${array[-idx]} and ${var:start:-len}||4.2 (2011)||
||lastpipe (s
hopt)||4.2 (2011)||
||read -N||4.1 (2009)||
||{var}> or {var}< etc. (FD variable assignment)||4.1 (2009)||
||syslog
history (compile option)||4.1 (2009)||
||BASH_XTRACEFD||4.1 (2009)||
||;& and ;;& fall-throughs for case||4.0 (2009)||
||associative arrays||4.0 (2009)||
||&>> and |&||4.0 (2009)||
||command_not_found_handle (function)||4.0 (2009)||
||coproc (keyword)||4.0 (2009)||
||globstar (s
hopt)||4.0 (2009)||
||mapfile/readarray (builtin)||4.0 (2009)||
||${var,[,]} and ${var&#94;[&#94;]}||4.0 (2009)||
||{009..012} (leading zeros in brace expansions)||4.0 (2009)||
||{x..y..incr}||4.0 (2009)||
||read
-t 0||4.0 (2009)||
||read -i||4.0 (2009)||
||x+=string array+=(string)||3.1 (2005)||
||printf -v var||3.1 (2005)||
||nocasematc
h (shopt)||3.1 (2005)||
||{x..y}||3.0 (2004)||
||${!array[@]}||3.0 (2004)||
||[[ =~||3.0 (2004)||
||printf %q produces $'...'||2.05b (2002)||
||<<<||2.05b (2002)||
||i++||2.04 (2000)||
||for ((;;))||2.04 (2000)||
||/dev/fd/N, /dev/tcp/host/port, etc.||2.04 (2000)||
||read
-t, -n, -d and -s||2.04 (2000)||
||a=(*.txt) file expansion||2.03 (1999)||
||extglob (s
hopt)||2.02 (1998)||
||[[||2.02 (1998)||
||printf (builtin)||2.02 (1998)||
||$(< filename)||2.02 (1998)||
||** (exponentiation)||2.02 (1998)||
||\xNNN||2.02 (1998)||
||(( ))||2.0 (1996)||

Is there a list of which features were added to specific releases (versions) of Bash?

Here are some links to official Bash documentation:

  • NEWS: a file tersely listing the notable changes between the current and previous versions

  • CHANGES: a "complete" bash change history (back to 2.0 only)

  • COMPAT: compatibility issues between bash3 and previous versions

A more extensive list than the one below can be found at http://wiki.bash-hackers.org/scripting/bashchanges

Notable changes in the upcoming bash version

Feature

Added in version

loadable builtin deployment infrastructure

4.4-beta

mapfile -d

4.4-alpha

--help for builtins

4.4-alpha

${var@spec}

4.4-alpha

local -

4.4-alpha

$! and wait for process substitutions

4.4-alpha

Notable changes in released bash versions

Feature

Added in version

wait -n

4.3 (2014)

test -R

4.3 (2014)

declare/typeset -n and associated changes to ${!ref} and for..in

4.3 (2014)

array[-idx] (in assignments, read, unset, etc)

4.3 (2014)

\uXXXX and \UXXXXXXXX

4.2 (2011)

declare -g

4.2 (2011)

test -v

4.2 (2011)

printf %(fmt)T

4.2 (2011)

${array[-idx]} and ${var:start:-len}

4.2 (2011)

lastpipe (shopt)

4.2 (2011)

read -N

4.1 (2009)

{var}> or {var}< etc. (FD variable assignment)

4.1 (2009)

syslog history (compile option)

4.1 (2009)

BASH_XTRACEFD

4.1 (2009)

;& and ;;& fall-throughs for case

4.0 (2009)

associative arrays

4.0 (2009)

&>> and |&

4.0 (2009)

command_not_found_handle (function)

4.0 (2009)

coproc (keyword)

4.0 (2009)

globstar (shopt)

4.0 (2009)

mapfile/readarray (builtin)

4.0 (2009)

${var,[,]} and ${var^[^]}

4.0 (2009)

{009..012} (leading zeros in brace expansions)

4.0 (2009)

{x..y..incr}

4.0 (2009)

read -t 0

4.0 (2009)

read -i

4.0 (2009)

x+=string array+=(string)

3.1 (2005)

printf -v var

3.1 (2005)

nocasematch (shopt)

3.1 (2005)

{x..y}

3.0 (2004)

${!array[@]}

3.0 (2004)

[[ =~

3.0 (2004)

printf %q produces $'...'

2.05b (2002)

<<<

2.05b (2002)

i++

2.04 (2000)

for ((;;))

2.04 (2000)

/dev/fd/N, /dev/tcp/host/port, etc.

2.04 (2000)

read -t, -n, -d and -s

2.04 (2000)

a=(*.txt) file expansion

2.03 (1999)

extglob (shopt)

2.02 (1998)

[[

2.02 (1998)

printf (builtin)

2.02 (1998)

$(< filename)

2.02 (1998)

** (exponentiation)

2.02 (1998)

\xNNN

2.02 (1998)

(( ))

2.0 (1996)

BashFAQ/061 (last edited 2024-04-14 22:29:57 by emanuele6)