Talvez você precise apenas colocar aspas ao redor do caminho de destino todo ? Por exemplo,
$ touch test
$ a=one
$ b=two
$ mv "test" "$a $b"
$ ls -la
total 8
-rw-r--r-- 1 whitequark whitequark 0 2010-01-27 01:21
-rw-r--r-- 1 whitequark whitequark 0 2010-01-27 01:20
drwxr-xr-x 2 whitequark whitequark 4096 2010-01-27 01:21 .
drwxr-xr-x 80 whitequark whitequark 4096 2010-01-27 01:16 ..
-rw-r--r-- 1 whitequark whitequark 0 2010-01-27 01:21 one two