在 SSH 登录服务器时运行脚本

在 SSH 登录服务器时运行脚本

我正在尝试弄清楚如何让 SSH 在将 shell 传递给我之前运行脚本。这样做的原因是我将登录到许多机器上的共享用户,并且我希望在登录时拥有自己的配置。将我自己的环境变量和别名放入 中是不合适的.cshrc,尤其是因为我将登录到不同机器上的不同用户的数量。

假设我的脚本包含各种alias命令,setenv并且/home/adam/my_script我希望在登录时调用它。

我尝试过使用:

ssh user@server1 'source /home/adam/my_script; tcsh'
ssh user@server1 '. /home/adam/my_script; tcsh'

还有这个:

ssh user@server1 /home/adam/my_script
ssh user@server1 'csh -c /home/adam/my_script'

tcsh(没有 & 符号)位于 的底部my_script时,没有任何组合能像您预期的那样工作。要么是环境变量和别名不存在,要么是 shell 的行为很奇怪,就像没有行输入提示一样。

我究竟做错了什么?

相关内容