Answers:
我认为不可能~/.ssh/config
。该-t
可以通过添加覆盖RequestTTY yes
,但它似乎没有可以指定远程命令~/.ssh/config
。
但是,使用zsh
,您可以添加:
alias -g 'serveralias=serveralias -t zsh'
给你~/.zshrc
。
或制作类似以下的功能:
zssh() ssh "$@" -t zsh
alias
真的正确吗?检查您的报价。
我同意@Stephane的观点,无法使用来执行此操作~/.ssh/config file
。另一种方法是使用~/.ssh/authorized_keys
远程服务器上的文件。如果添加这样的行:
command="exec zsh" ssh-dss ..... rest of key ....
然后,您可以像往常一样使用ssh,然后在远程服务器上得到一个zsh。
在服务器上,ssh到远程。
$ ssh saml@greeneggs
在远程服务器上,确认我们位于zsh
。
[saml@greeneggs]~% ps -eaf|grep $$
saml 1974 1973 1 10:34 pts/3 00:00:00 zsh
saml 2023 1974 0 10:34 pts/3 00:00:00 ps -eaf
saml 2024 1974 0 10:34 pts/3 00:00:00 grep --color=auto 1974
您可以使用此文件做更多复杂的事情,请参阅标题为ssh的问答,启动特定的shell并在远程计算机上运行命令?。
command="exec zsh"
这是一个坏主意:它使使用显式命令(因此再见scp,rsync等)运行ssh成为不可能。unix.stackexchange.com/a/20739展示了如何做到这一点。