{"id":176225,"date":"2025-07-06T15:18:33","date_gmt":"2025-07-06T15:18:33","guid":{"rendered":"https:\/\/linuxiac.com\/?p=176225"},"modified":"2025-07-06T15:29:54","modified_gmt":"2025-07-06T15:29:54","slug":"bash-shell-5-3-released-with-new-command-substitution","status":"publish","type":"post","link":"https:\/\/linuxiac.com\/bash-shell-5-3-released-with-new-command-substitution\/","title":{"rendered":"Bash Shell 5.3 Released with New Command Substitution"},"content":{"rendered":"\n<p>Almost three years after Bash 5.2, and following a year-long cycle of beta and release candidate builds, the most popular command-line shell and scripting language used in Unix-like operating systems has released version 5.3.<\/p>\n\n\n\n<p>The headline feature is a pair of new substitution forms, <code>${ command; }<\/code> and <code>${|command;}<\/code>, that run in the <em>current<\/em> shell context rather than in a child process. That change means scripts can capture output (or let the command write to <code>REPLY<\/code>) without paying the usual fork-and-pipe overhead\u2014handy for tight loops and embedded systems.<\/p>\n\n\n\n<p>Another welcome addition is <code>GLOBSORT<\/code>, a shell variable that lets users dictate how pathname expansions are ordered\u2014by name, size, various timestamps, or even unsorted\u2014and whether the list is ascending or descending.<\/p>\n\n\n\n<p>Power users who live in tab completion will appreciate <code>compgen -V<\/code>, which can stuff generated completions directly into a variable, and <code>read -E<\/code>, which now borrows Readline\u2019s programmable completion when grabbing interactive input. Meanwhile, <code>source -p PATH<\/code> allows scripts to \u201cdot in\u201d companion files from an explicit search path instead of <code>$PATH<\/code>.<\/p>\n\n\n\n<p>Under the hood, the codebase has been updated to ensure conformance with C23 (the latest revision of the C programming language standard). As a consequence, Bash will no longer build with K&amp;R-era compilers\u2014a footnote for most distributions but a signal that legacy toolchains need to move on.<\/p>\n\n\n\n<p>Last but not least, Bash 5.3\u2019s twin, Readline 8.3, was released the same day. The standalone library now offers case-insensitive searching (<code>search-ignore-case<\/code>), a callable <code>execute-named-command<\/code>, and an <code>export-completions<\/code> facility for feeding completion data to external programs.<\/p>\n\n\n\n<p>For a full list of changes, <a href=\"https:\/\/lists.gnu.org\/archive\/html\/bug-bash\/2025-07\/msg00005.html\" target=\"_blank\" rel=\"noreferrer noopener\">see the announcement<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bash Shell 5.3 is out now, adding new scripting features, bug fixes, and enhancements to completion, substitution, and Readline.<\/p>\n","protected":false},"author":10,"featured_media":176252,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,5],"tags":[66,4137],"class_list":["post-176225","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software","category-news","tag-bash","tag-shell"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/posts\/176225","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/comments?post=176225"}],"version-history":[{"count":0,"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/posts\/176225\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/media\/176252"}],"wp:attachment":[{"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/media?parent=176225"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/categories?post=176225"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linuxiac.com\/wp-json\/wp\/v2\/tags?post=176225"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}