Hashes containing '$' need to be enclosed in single quotes on the Unix commandline. This is because $[string] is a way to do variable substitution in bash and related shells.
Once you fix that, you won't need to specify the separator on the commandline.
Once you fix that, you won't need to specify the separator on the commandline.
~