Definitivamente não está relacionado a citar (o que deve provavelmente ser ssh -t host1 "ssh -t host2 \"uname -a\"" ). As cotas aplicam-se apenas aos argumentos da linha de comando, não ao comando input / output. Apenas $() pode afetar a saída.
O problema pode ser simplesmente como ssh manipula a entrada / saída tty. Parece que ssh (aqui ssh -t host1 ) não usa o dispositivo terminal do lado do cliente, mesmo que tenha um disponível - ele grava em stdout, que $() capturará.
A melhor solução seria configurar a autenticação de chaves entre local e host2 , depois adicionar as chaves ao ssh-agent e usar a opção "Encaminhamento de agentes": %código%. Dessa forma, você não precisa copiar sua chave privada em nenhum outro lugar.