Po skoraj treh letih razvoja je bila objavljena nova različica interpreterja ukazov GNU Bash 5.3, ki se privzeto uporablja v večini distribucij Linuxa. Hkrati je bila izdana tudi knjižnica readline 8.3, ki se v bashu uporablja za organizacijo urejanja ukazne vrstice.
Ključne izboljšave vključujejo:
- Implementirani sta novi obliki zamenjave ukazov "${ command; }" in "${|command;}", ki omogočata prestrezanje izhoda ukaza brez razcepitve ločenega podrejenega procesa in brez uporabe neimenovanih cevi. Rezultati izvajanja ukaza se vrnejo kot rezultat zamenjave ali zapišejo v spremenljivko REPLY.
- Dodana je bila nova spremenljivka GLOBSORT, ki določa način razvrščanja pri dodajanju poti datoteke. Na primer, lahko izberete razvrščanje po imenu (GLOBSORT=ime), velikosti (GLOBSORT=velikost) ali času spremembe (GLOBSORT=čas spremembe), določite pa lahko tudi neposredni (od manjše do večje) ali obratni (od večje do manjše) vrstni red razvrščanja (na primer, z "GLOBSORT=-velikost" bodo največje datoteke prikazane najprej).
- Vgrajeni ukaz »compgen« ima zdaj možnost »-V ime_spremenljivke« za shranjevanje ustvarjenih dodatkov v spremenljivko namesto izpisa v standardni izhod.
- Vgrajenemu ukazu »read« je bila dodana možnost »-E«, ki pri vnosu podatkov uporablja knjižnico readline s pravili samodokončanja konstrukcije bash.
- Vgrajeni ukaz »source« ima zdaj možnost »-p PATH«, ki omogoča preglasitev iskalnega seznama v poteh datotek (namesto spremenljivke $PATH se uporabi navedena vrednost).
- Izvorna koda je bila pretvorjena za uporabo standarda C23. Možnost gradnje prevajalnikov v načinu "K&R C" (slog, ki ustreza opisu jezika C v knjigi "Programski jezik C" avtorjev Kernighan in Ritchie) je bila ukinjena.
- Vgrajeni ukaz "umask" je v celoti skladen s specifikacijami POSIX.
- Dodan je bil naložljiv ukaz »kv«, ki ustvari asociativno tabelo na podlagi nabora podatkov v formatu ključ-vrednost.
- Dodan je naložljiv ukaz »strptime«, ki pretvori besedilno predstavitev datuma in časa v epohalni čas (število sekund od 1. januarja 1970).
- Dodan je bil naložljiv ukaz »fltexpr«, ki omogoča aritmetične operacije s plavajočo vejico, podobne ukazu let.
- Dodana dinamično nastavljena spremenljivka BASH_MONOSECONDS, ki vsebuje trenutno vrednost monotone ure sistema, ki se nenehno povečuje, tudi ko se čas spremeni v preteklo vrednost.
- V načinu POSIX se primerjave nizov v ukazu »test« z uporabo operatorjev »<« in »>« zdaj izvajajo ob upoštevanju trenutnih jezikovnih nastavitev.
- Ukaz "bind -x" omogoča presledek za ločevanje ključa in ukaza, če je zaporedje zaprto v dvojne narekovaje.
- Nova različica programa Readline ponuja možnost »search-ignore-case« za iskanje po zgodovini brez razlikovanja med velikimi in malimi črkami. Dodan je bil ukaz »export-completions« za izvoz dopolnjevanj besed za obdelavo v drugih procesih. Dodan je bil ukaz »execute-named-command« za izvajanje ukaza, katerega ime je pridobljeno iz standardnega vhodnega toka.
Vir: opennet.ru
