When I echo $1 as suspected I get the value 2010/08/03-16:39:54
when I echo &1 I get the value &1.

Not surprised at tha.

The problem is that the value is not being passed into the rman block. How
do I do that?

I know I can't do something like this this:

rman $1 < bla
bla
bla
EOF

So how can I pass parameters into the block?