我在SSH Config文件中有一个快捷方式,它工作得很好,但我想要做的是让不同的别名跳转到服务器上的不同目录.所以,如果我输入
ssh domain1
Run Code Online (Sandbox Code Playgroud)
它连接并将自动cd进入domain1的目录.
有没有办法做到这一点?就像是
Host dev1
Hostname example.com
User myname
Dir domains/domain1/
Host dev2
Hostname example.com
User myname
Dir domains/domain2/
Run Code Online (Sandbox Code Playgroud)
Jay*_*Jay 19
在这篇关于ServerFault的帖子中,他们说你无法通过ssh配置文件完成所有操作.但是你可以使用ssh配置和你的.bash_profile或终端书呆子调用它.在ssh配置文件中添加
Host dev
Hostname server.com
User joe
Run Code Online (Sandbox Code Playgroud)
然后在.bash_profile中添加别名
alias domain1="ssh dev -t 'cd domains/domain1; bash'"
Run Code Online (Sandbox Code Playgroud)
这里dev指的是您在配置文件中设置的内容.
在终端中,只需输入domain1,您将被要求输入密码并直接进入目录.为您的所有域创建一个新的别名,它将使每个域的登录变得非常容易.
Phi*_*ßen 12
看看 https://serverfault.com/questions/167416/change-directory-automatically-on-ssh-login
这是公认的答案:
LocalCommand反正不是你想要的 那是在你的机器上运行的。你要RemoteCommand。这样的事情对我有用:
Host example.net
RemoteCommand cd / && exec bash --login
RequestTTY yes
Run Code Online (Sandbox Code Playgroud)
(旧答案)对于类似的用例,ssh -t也是一种选择:
ssh server -t "cd /my/remote/directory; bash --login"
Run Code Online (Sandbox Code Playgroud)
它不一样,因为它不使用 ssh 配置。但是您可以为命令定义别名并最终获得类似的效果。
| 归档时间: |
|
| 查看次数: |
12463 次 |
| 最近记录: |