in reply to Reading special characters from file?

They will only be interpreted as scalars if you eval them... if a $ is in a string it is only a $... example
$test = 'ab$cd'; print "$test\n"; #prints ab$cd\n #only when you actually have the $ in double quotes... print "ab$cd\n"; #do you need to worry about it
Update but if you were evalling it you could do
eval "\Q$test\E";
the \Q \E goes through a string escaping (\$) all non word characters.
                - Ant