Existe uma maneira de estruturar um único comando para efetuar login via SSH em um servidor remoto e executar um programa no shell de login remoto?
No manual do OpenSSH, ele lê "Se o comando for especificado, ele será executado no host remoto em vez de no shell de login". Assim, por exemplo, você ssh user@server mail
fará logon no servidor remoto, exibirá o status da caixa de correio e retornará ao shell local. Existe uma maneira de permanecer no shell remoto depois de exibir o status do email?
Além disso, ssh user@server [command]
parece não funcionar se o comando for um programa, por exemplo, vim ou mutt. Existe uma maneira de fazer login no shell remoto e executar um programa enquanto permanece no shell remoto durante o programa e depois de sair do programa, saindo finalmente apenas com um logout
comando específico (como em uma sessão SSH normal)?
Eventualmente, eu gostaria de poder colocar um comando como um alias no local .bashrc, para que ele pudesse ser executado rapidamente quando desejado. Um exemplo seria o login via SSH em um servidor remoto e abrir o mutt no servidor remoto para ler ou enviar email.
ssh remote@server mail ; ssh remote@server
:? Além disso, qualquer comando executado remotamente que precise de um terminal não sobreviverá / funcionará sobre o ssh, certo?