Διατίθεται κέλυφος Bash 5.2

Μετά από είκοσι μήνες ανάπτυξης, δημοσιεύτηκε μια νέα έκδοση του διερμηνέα εντολών GNU Bash 5.2, που χρησιμοποιείται από προεπιλογή στις περισσότερες διανομές Linux. Ταυτόχρονα, κυκλοφόρησε η βιβλιοθήκη readline 8.2, που χρησιμοποιείται στο bash για την οργάνωση της επεξεργασίας γραμμής εντολών.

Οι βασικές βελτιώσεις περιλαμβάνουν:

  • Ο κώδικας για την ανάλυση δομών αντικατάστασης εντολών (αντικατάσταση εξόδου από την εκτέλεση μιας άλλης εντολής, για παράδειγμα, "$(command)" ή `command`) έχει ξαναγραφεί. Η νέα υλοποίηση χρησιμοποιεί μια αναδρομική κλήση στον αναλυτή bison και διαθέτει καλύτερο έλεγχο σύνταξης και έγκαιρη ανίχνευση σφαλμάτων σε υποκατεστημένες δομές.
  • Βελτιωμένη ανάλυση και επέκταση δεικτών πίνακα. Υλοποιήθηκε η δυνατότητα χρήσης των παραμέτρων "@" και "*" στην ενσωματωμένη εντολή unset για την επαναφορά ενός κλειδιού με μια δεδομένη τιμή αντί για την επαναφορά ολόκληρου του πίνακα.
  • Προστέθηκε η νέα ρύθμιση "patsub_replacement". Όταν οριστεί, ο χαρακτήρας "&" στη συμβολοσειρά που αντικαταστάθηκε χρησιμοποιείται για να αντικαταστήσει το τμήμα της συμβολοσειράς που ταιριάζει με το καθορισμένο μοτίβο. Για να εισαχθεί η κυριολεκτική λέξη "&", πρέπει να γίνει διαφυγή με ανάστροφη κάθετο.
  • Ο αριθμός των περιπτώσεων στις οποίες δεν εκτελείται διακλάδωση πρόσθετων διεργασιών έχει επεκταθεί, για παράδειγμα, η διακλάδωση δεν χρησιμοποιείται πλέον όταν χρησιμοποιείται η κατασκευή "$(".
  • Υλοποιήθηκε ένα νέο εσωτερικό πλαίσιο για τον υπολογισμό του χρονοδιακόπτη και του χρονικού ορίου.
  • Παρέχεται η δυνατότητα ενεργοποίησης κατά τη στιγμή της κατασκευής (configure --enable-alt-array-implementation) μιας εναλλακτικής υλοποίησης πίνακα που έχει βελτιστοποιηθεί για μέγιστη ταχύτητα πρόσβασης με κόστος την αυξημένη κατανάλωση μνήμης.
  • Η χρήση των υποκαταστάσεων $'…' και $»…» που χρησιμοποιούνται στην τοπική προσαρμογή έχει επεκταθεί. Η ρύθμιση noexpand_translations και η επιλογή δημιουργίας "configure —enable-translatable-strings" έχουν προστεθεί για να ελέγχουν εάν είναι ενεργοποιημένη η υποστήριξη για τοπικές υποκαταστάσεις $»…».
  • Προστέθηκε και ενεργοποιήθηκε από προεπιλογή η ρύθμιση "globskipdots" για την αποτροπή της επιστροφής των "." και ".." κατά την επέκταση διαδρομών.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο