How is bash scripting affected by the bash4 release? How is bash scripting affected by the bash4 release? shell shell

How is bash scripting affected by the bash4 release?


The bash NEWS file, repro'd here with some summary, has some good info. Big new features include:

  • Associative arrays: name members in array using array[name], and access with ${array[name]}
  • The special ** glob pattern: match all files and "zero or more" directories
  • Co-processes: use the coproc keyword to spawn another process, then redirect its I/O to the currently existing shell (or another process, if you so desire)
  • Case-modifying expansions: match names without regard to character case


There is a compatibility document that covers all versions of bash through to 4.1.

Tightening up of POSIX compliance is one area where differences with version 3.2 have arisen.