34.2. Bash, version 3

Le 27 juillet 2004, Chet Ramey a sorti la version 3 de Bash. Cette mise à jour a corrigé un bon nombre de bogues et a ajouté quelques nouvelles fonctionnalités.

Voici quelques-unes des nouvelles fonctionnalités les plus importantes :

[Attention]

Attention

La mise à jour à la version 3 de Bash casse quelques scripts qui fonctionnaient avec les anciennes versions. Testez les scripts critiques pour vous assurer qu'ils fonctionnent toujours !

Quelques scripts du Guide ABS ont dû être corrigés (voir l'Exemple A.21, « obj-oriented: Bases de données orientées objet » et l'Exemple 9.4, « read avec délai », par exemple).

34.2.1. Bash, version 3.1

La version 3.1 de Bash introduit un certain nombre de corrections et quelques modifications mineures.

  • L'utilisation de l'opérateur += est maintenant autorisé à des endroits où seul l'opérateur d'affectation = était reconnu.

    a=1
    echo $a        # 1
    
    a+=5           # Ne fonctionnera pas avec les versions Bash précédant la 3.1.
    echo $a        # 15
    
    a+=Hello
    echo $a        # 15Hello
    

    Ici, += fonctionne comme l'opérateur de concaténation de chaîne. Notez que ce comportement dans ce contexte particulier est différent de celui d'une construction let.

    a=1
    echo $a        # 1
    
    let a+=5       # Arithmétique entière, plutôt que concaténation de chaînes.
    echo $a        # 6
    
    let a+=Hello   # N' "ajoute" rien à a.
    echo $a        # 6
    

34.2.2. Bash, version 3.2

C'est principalement une mise à jour corrective.