$cmd
não avalia sua variável, apenas a expande e passa para o shell como uma string, e é por isso que você está recebendo erros. No seu caso, tente eval "$cmd"
.
E, de qualquer forma, sugiro usar $(ssh the_rest_of_your_command_line)
em vez de eval "$cmd"
, pois eval
é um mau hábito.