如何通过 ssh 执行内联命令

如何通过 ssh 执行内联命令

我正在努力通过 ssh 执行命令,尤其是别名命令。

我需要的别名是ldocker在远程设置的.bashrc

到目前为止我尝试过:

$ssh bugs2 '. .bashrc && echo "--" && alias && echo "--"'

$ssh bugs2 'source .bashrc && echo "--" && alias && echo "--"'

$ssh bugs2 'bash "source .bashrc && alias"'
bash: source .bashrc && alias: Aucun fichier ou dossier de ce type

$ssh bugs2 "bash \"source .bashrc && alias\""
bash: source .bashrc && alias: Aucun fichier ou dossier de ce type

我看过以下帖子

但找不到任何解决我的问题的方法。

所以我的问题是:

如何通过 ssh 在一行中执行.bashrc远程aliased命令?

答案1

那这个呢 :

ssh bugs2 "bash -ic remotealias"

对我来说它几乎有效,别名是:

alias remotealias='echo 123123123'

输出是:

bash: cannot set terminal process group (-1): Invalid argument
bash: no job control in this shell
123123123

编辑:但偷窃自这里,最干净的解决方案是将以下行添加到远程.bashrc文件中:

shopt -s expand_aliases

相关内容