{"id":33201,"date":"2025-07-09T18:58:05","date_gmt":"2025-07-09T18:58:05","guid":{"rendered":"https:\/\/www.linuxboxen.dk\/?p=33201"},"modified":"2025-07-09T19:00:36","modified_gmt":"2025-07-09T19:00:36","slug":"bash-5-3","status":"publish","type":"post","link":"https:\/\/www.linuxboxen.dk\/?p=33201","title":{"rendered":"Bash 5.3"},"content":{"rendered":"\n<p>En ny version af GNU-projektets <strong>Bourne Again SHell<\/strong> \u2013 bedre kendt som <strong>Bash<\/strong> \u2013 er blevet udgivet, n\u00e6sten tre \u00e5r efter den seneste version.<\/p>\n\n\n\n<p>If\u00f8lge den officielle udgivelsesmeddelelse indeholder <strong>Bash 5.3<\/strong> <em>&#8220;v\u00e6sentlige nye funktioner&#8221;<\/em>, sammen med en r\u00e6kke forbedringer, fejlrettelser og opdateringer af kompatibilitet.<\/p>\n\n\n\n<p>Den st\u00f8rste nyhed er en <strong>ny form for kommando-substitution<\/strong>, som g\u00f8r det muligt at <strong>udf\u00f8re kommandoen i den aktuelle shell-kontekst<\/strong>.<\/p>\n\n\n\n<p>Der findes to varianter:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>${ command; }<\/code> fanger standardoutput <strong>uden at oprette en ny proces (forking)<\/strong>.<\/li>\n\n\n\n<li><code>${| command; }<\/code> k\u00f8rer i den aktuelle shell og gemmer resultatet i <strong>REPLY<\/strong>-variablen.<\/li>\n<\/ul>\n\n\n\n<p>Desuden er <strong>input og autofuldf\u00f8relse<\/strong> ogs\u00e5 blevet forbedret i Bash 5.3.<\/p>\n\n\n\n<p>En ny variabel, <strong>GLOBSORT<\/strong>, giver mulighed for at styre sorteringen af filnavne i autofuldf\u00f8relse \u2013 f.eks. efter navn, st\u00f8rrelse, blokke, \u00e6ndringstid, adgangstid, oprettelsestid, numerisk eller ingen sortering \u2013 b\u00e5de stigende og faldende.<\/p>\n\n\n\n<p>Kommandoen <strong><code>source<\/code><\/strong> har f\u00e5et en ny <strong><code>--p PATH<\/code><\/strong>-parameter, s\u00e5 man kan angive, hvor der skal ledes efter filer.<\/p>\n\n\n\n<p>Bash 5.3 \u00e6ndrer ogs\u00e5 m\u00e5den, hvorp\u00e5 resultater fra den indbyggede <strong><code>compgen<\/code><\/strong>-funktion h\u00e5ndteres: i stedet for at skrive til standardoutput, gemmes de nu i en shellvariabel.<\/p>\n\n\n\n<p>Den indbyggede <strong><code>read<\/code><\/strong>-funktion har f\u00e5et en ny <strong><code>-E<\/code><\/strong>-parameter, der aktiverer <strong>Readline-autofuldf\u00f8relse<\/strong>, hvilket muligg\u00f8r tab-completion, mens man l\u00e6ser input.<\/p>\n\n\n\n<p><strong>Readline<\/strong>, som er biblioteket Bash bruger til kommando-redigering, historik og tab-completion, har ogs\u00e5 f\u00e5et nye funktioner.<\/p>\n\n\n\n<p>\u00c6ndringsloggen n\u00e6vner bl.a.:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>En ny mulighed for <strong>case-insensitiv s\u00f8gning<\/strong><\/li>\n\n\n\n<li>En ny kommando til at <strong>udf\u00f8re navngivne Readline-kommandoer<\/strong><\/li>\n\n\n\n<li>En funktion, der <strong>eksporterer mulige ordfuldf\u00f8relser<\/strong> i et bestemt format, som andre processer kan bruge.<\/li>\n<\/ul>\n\n\n\n<p><strong>Bash 5.3 forbedrer ogs\u00e5 h\u00e5ndteringen af scripts og fejlrapportering<\/strong>, f.eks. ved at vise en fejlmeddelelse hvis et regul\u00e6rt udtryk i <code>[[ ... ]]<\/code> fejler ved kompilering, og ved at kontrollere de to f\u00f8rste linjer i et <code>#!<\/code>-script f\u00f8r det antages at v\u00e6re en bin\u00e6rfil.<\/p>\n\n\n\n<p>Du kan se hele \u00e6ndringsloggen i filen <strong>CHANGES<\/strong> (linket findes i den officielle udgivelse) for en komplet oversigt over alt det nye i Bash 5.3. Kildekoden kan hentes fra GNU Bash-hjemmesiden.<\/p>\n\n\n\n<p>Link <a href=\"https:\/\/www.gnu.org\/software\/bash\/\">https:\/\/www.gnu.org\/software\/bash\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En ny version af GNU-projektets Bourne Again SHell \u2013 bedre kendt som Bash \u2013 er blevet udgivet, n\u00e6sten tre \u00e5r efter den seneste version. If\u00f8lge den officielle udgivelsesmeddelelse indeholder Bash 5.3 &#8220;v\u00e6sentlige nye funktioner&#8221;, sammen med en r\u00e6kke forbedringer, fejlrettelser og opdateringer af kompatibilitet. Den st\u00f8rste nyhed er en ny form for kommando-substitution, som g\u00f8r [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":33204,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","footnotes":""},"categories":[5,2],"tags":[],"class_list":["post-33201","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bash","category-tips"],"a3_pvc":{"activated":false,"total_views":0,"today_views":0},"_links":{"self":[{"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/posts\/33201","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=33201"}],"version-history":[{"count":2,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/posts\/33201\/revisions"}],"predecessor-version":[{"id":33203,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/posts\/33201\/revisions\/33203"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=\/wp\/v2\/media\/33204"}],"wp:attachment":[{"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=33201"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=33201"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linuxboxen.dk\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=33201"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}