当我通过 ssh 进入未运行任何类型的 X11 桌面环境的远程服务器时,我收到以下消息。
$ ssh user@server
X11 forwarding request failed
$ ssh user@server ls
X11 forwarding request failed on channel 1
file1
file2
...
Run Code Online (Sandbox Code Playgroud)
我怎样才能摆脱这些消息?
大概这是我在 oh-my-zsh 设置中启用的某个插件提供的功能(我已经使用 zsh 很多年了)。
我注意到自从我将我的公钥添加到服务器(现在我可以在不输入密码的情况下通过 SSH 连接到服务器),当我scp在我的 shell 中编写一个命令时,我实际上能够完成远程文件路径!
例如
$ diff <(scp Remoteuser@remote.domain.net:/var/www/html/
Run Code Online (Sandbox Code Playgroud)
我点击了标签,它就起作用了!(至于我试图用命令本身完成什么,我将使用scp“复制”到标准输出,并将其作为文件提供给差异。这样我可以看到我在之前部署到服务器的确切更改运行rsync)
我很好奇是什么部分使这项工作如此顺利。它是否内置于与 z shell 集成的 scp 中?或者是其他东西?
我有一大堆服务器,通常我ssh一直都在使用。有什么方法可以使用bashorzsh来保留主机名列表,bash 自动完成功能会遍历文件,并在我键入主机名的前几个字母时为我提供以这些字母开头的框的建议。