通过SSH执行.bash_profile别名

我想远程执行一个.bash_profile别名,但我找不到正确的命令。

我试过了:
ssh user@host "bash -ic myalias"
但它不起作用

我得到:

 bash: cannot set terminal process group (-1): Invalid argument bash: no job control in this shell bash: myalias: command not found 

你可以把别名放在一个单独的文件中。 然后你可以从你的.bash_profile获取它,而ssh命令看起来像这样:

 ssh user@host bash -c '. .bash_aliases; shopt -s expand_aliases; myalias' 

我认为你应该尝试将alias命令放在.bashrc而不是.bash_profile中。

我在我的一台服务器上尝试了这个,别名被认出了。

我相信这是因为ssh user @ host是一个非loginshell。 通常.bash_profile被跳过,用于非loginshell。