On Sat, Oct 05, 2019 at 06:48:35PM +0000, George R Goffe via Bug reports for the GNU Bourne Again SHell wrote: > I was expecting to see: > 12345
> #!./bash -xv > x="1 2 3 4 5" > for z in "$x" > do > echo "$z" > done > exit 0 Not a bug. You've created a string of length 9 characters, and you've told bash to iterate once, using this string as the contents of variable z. If you want to create a *list* and iterate over that list, one element at a time, use arrays instead of string variables. x=(1 2 3 4 5) for z in "${x[@]}"; do echo "$z" done See <https://mywiki.wooledge.org/BashGuide/Arrays> and <https://mywiki.wooledge.org/BashFAQ/005>.