Bash 5.3 adds new command substitution & completion, improved scripting and C23 compliance
Bash 5.3 has been released, offering a set of critical bug fixes and introducing several new features for shell users. Among the most notable changes is a new form of command substitution. This allows commands to be executed in the current shell execution context, with two methods available: one retrieves output directly, while the other stores results in the REPLY shell variable. This addition directly benefits Bash scripters seeking more flexible command processing.
Expanding on completions, users will find that the newly introduced GLOBSORT shell variable controls how the shell sorts path name completion results. The compgen built-in has gained the ability to place its output into a specified shell variable rather than printing to standard output. Additionally, the read built-in now features a -E option, leveraging Readline for default and programmable completion support. These improvements enable more sophisticated interaction during script input and file selection.
For script sourcing, the source built-in has added a -p PATH flag. This allows users to specify a search path argument, rather than relying strictly on $PATH. Developers will also notice that the Bash source code now aligns with the C23 standard. As a result, compilation with traditional K&R-style C compilers is no longer supported. Finally, Bash 5.3 also encompasses a range of further enhancements and bug fixes.
