a. -a-b- -a-b - -a b- -a b- -a-b\- -a b\- -\-a b\- -\ a b\- -\-a b\- -\ a b\- argv[1] = <^A> argv[1] = <^A> argv[1] = <^?> argv[1] = <^?> argv[1] = 1: x[A] y[B] z[] 1a: 2: x[A B] [A B ] [ A B ] ==aa== ==== ==== argv[1] = < foo> argv[1] = < foo> argv[1] = argv[1] = < foo> argv[1] = argv[1] = argv[1] = < foo> a = abcdefg xyz a = xyz a = -xyz 123- a = abc timeout 1: ok unset or null 1 timeout 2: ok unset or null 2 timeout 3: ok unset or null 3 ./read2.sub: line 45: read: -3: invalid timeout specification 1 abcde abcde ./read3.sub: line 17: read: -1: invalid number abc defg ab abc # while read -u 3 var do echo "$var" done 3<$0 argv[1] = <> argv[1] = <> argv[1] = <> FOO argv[1] = <> argv[1] = <3> argv[1] = <> argv[2] = <> argv[3] = <> FOO 0 0 0 0 0 1 timeout 1: ok unset or null 1 timeout 2: ok unset or null 2 timeout 3: ok unset or null 3 timeout 4: ok abcde abcde one two three four one two three four