![ssh 配置文件中的远程命令](https://linux22.com/image/108589/ssh%20%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E8%BF%9C%E7%A8%8B%E5%91%BD%E4%BB%A4.png)
我想设置 ssh_config,这样在输入后ssh my_hostname
我就会进入特定的文件夹。就像我会打字一样cd /folder/another_one/much_much_deeper/
。
我怎样才能做到这一点?
编辑。它已被标记为“How to ssh into dir...”的重复项,但它是不是我的问题。
我知道我可以通过将命令尾随ssh
命令来执行任何命令。我的问题是关于/ssh_config
文件而不是命令。
答案1
没有办法做到这一点,直到OpenSSH 7.6。从手动的:
远程命令
指定成功连接到服务器后在远程计算机上执行的命令。命令字符串延伸到行尾,并使用用户的 shell 执行。
RemoteCommand
接受中描述的令牌的参数代币部分。
所以现在你可以拥有
RemoteCommand cd /tmp && bash
它被引入于这次提交。
答案2
我想在输入 ssh my_hostname 之后设置 ssh_config
这不可能。没有选择可以实现这一点ssh_config
。最接近的是设置 bash 别名或 bash 函数,例如
myssh() {
ssh -t $1 "cd /dir/; bash"
}
答案3
在索莫因指出这是原件之前,我回复了另一张票。
如果使用 Mac,我的建议是使用 iTerm2 并创建一个配置文件。输入命令行,然后在开始时发送文本字段中ssh my_hostname
添加命令。cd /folder/another_one/much_much_deeper/
当您连接到会话时,它将 ssh 到您的主机名并 cd 到您的情况下的目录,或执行命令。