On 5 juin, 20:29, Chet Ramey <chet.ra...@case.edu> wrote: > Francis Moreau wrote: > > Hello, > > > My version of bash is "GNU bash, version 3.2.33(1)-release (x86_64- > > redhat-linux-gnu)" running on a fedora 9. > > > Here's is a small script to show the bug: > > > #!/bin/bash > > > #shopt -s nullglob > > > foo[0]=0 > > unset foo[0] > > echo ${f...@]} > > > When shopt line is commented then the element at index 0 is destroyed > > and the echo doesn't output anything. However is a uncomment the shopt > > line the element at index 0 is not destroyed anymore and the echo > > output "0". > > This is why the man page says: > > The unset builtin is used to destroy arrays. unset name[subscript] > destroys the array element at index subscript. Care must be taken to > avoid unwanted side effects caused by filename generation. > > In this case, you should quote the argument if you don't want globbing > to potentially alter it. >
Yes sorry for the noise, I've been struggling to debug a bash script for too long and my brain was not working anymore.