A while-nak több baja is van.
Nem kerek zárójelek kellenek, hanem egy test parancs:
while test "$a" != "$b" ; do echo a; echo b; echo c; done
Illetve a szokásos forma:
while [ "$a" != "$b" ]; do echo a; echo b; echo c; done
A másik, hogy az ilyen jellegű hasonlításoknál a változót nem árt idézőjelek (") közé tenni (hangsúlyozottan nem aposztróf (') !!! ), hogy ha üres a változód, akkor se legyen gond vele.
...