我想远程执行一个.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。