我处于多个用户在远程计算机上共享同一用户帐户的情况。我有一个“个人”目录,我在其中写入了自己的.zshrc
文件,并且希望有一种方法:
- 使用我的ssh配置文件(例如
ControlMaster auto
)中的指令在远程计算机中启动ssh会话 - 该会话运行一个Z shell
- 它
.zshrc
在我的“个人”目录中运行(不在共享用户的主目录中)
拥有别名或启动此类ssh会话的简单方法(这就是我考虑使用OpenSSH的配置文件的原因)会很高兴,但是我愿意接受任何其他建议!
使用OpenSSH的配置文件?
我在OpenSSH的ssh_config 手册页上读到,可以使用指令LocalCommand
指定成功连接到服务器后在本地运行的命令。这使我认为可能有一种方法可以告诉config
文件在连接到服务器后要远程运行什么命令,但是似乎没有任何方法。
谢谢@Guilles。我处于多个用户共享同一个远程帐户的情况,因此我想在远程登录时快速进行一些设置。更具体地说,我想启动一个Z Shell,并要求它
—
Amelio Vazquez-Reina
.zshrc
在特定目录(即“个人”主目录)中运行。我尝试了一下,ssh -t host_name 'zsh & source /path/to/my_zshrc'
但是没有用(我明白了FPATH variable not defined
,我想这是因为zsh
它在运行之前已经完成了my_zshrc
,更不用说这没有给我Z壳了)
我认为这值得对OP进行更新,因此我刚刚对其进行了更新。
—
阿梅里奥·瓦兹克斯·雷纳
在寻找了我的类似答案之后,我想到这个问题与您要尝试做的非常接近。
—
吉尔(Gilles)“所以,别再邪恶了”,
ssh mycommand
?而且,如果您想在ssh上的每个命令之前运行一些setup命令,为什么不配置服务器端呢?