ne peut pas exécuter la command ssh distante sans heredoc

Je n'arrive pas à faire fonctionner cette command:

user@server:~: ssh otherserver bash -ic 'source .profile; some-aliased-command' 

Variations J'ai essayé

 user@server:~: ssh -t otherserver bash -ic 'source .profile; some-aliased-command' user@server:~: ssh -t otherserver "bash -ic 'source .profile; some-aliased-command'" user@server:~: ssh -t otherserver "bash -ic source .profile; some-aliased-command" user@server:~: ssh otherserver bash -ic 'source .profile; some-aliased-command' user@server:~: ssh otherserver "bash -ic 'source .profile; some-aliased-command'" user@server:~: ssh otherserver "bash -ic source .profile; some-aliased-command" 

J'obtiens habituellement une variation de ces erreurs:

 bash: cannot set terminal process group (-1): Invalid argument bash: no job control in this shell stdin: is not a tty bash: some-aliased-command: command not found 

Mais comme ça, ça marche:

 user@server:~: ssh otherserver bash -i << EOF source .profile some-aliased-command EOF 

En fait quand je cours ceci:

 ssh -t otherserver 'bash -ic "source ~/.profile; alias"' 

Il répertorie tous les alias, y compris la command some-aliased-command que je veux exécuter.

J'ai essayé toutes sortes de variations avec des quoutes simples, doubles, échappées, mais je suis coincé et cela ne marchera qu'avec la version heredoc.

Comment puis-je le faire fonctionner sans l'heredoc (en tant que doubleur)?

Même réponse que précédemment, mais ajoutez +m pour corriger le problème de contrôle de travail:

 ssh otherserver "bash -ic +m 'source .profile; some-aliased-command'"