具有以下操作系统:
- Linux Ubuntu (18.04 LTS)
当我执行ssh
命令时,我得到以下信息:
> ssh
usage: ssh [some characters shown] [-B bind_interface]
[-b bind_address] [-c cipher_spec] [-D [bind_address:]port]
[-E log_file] [-e escape_char] [-F configfile] [-I pkcs11]
[-i identity_file] [-J [user@]host[:port]] [-L address]
[-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
[-Q query_option] [-R address] [-S ctl_path] [-W host:port]
[-w local_tun[:remote_tun]] destination [command]
根据Github
以下部分中的文档:
有以下语句:
$ ssh -T git@hostname
从上面观察-T
参数,它没有出现在第一个输出中。
它甚至没有出现在有关以下内容的“官方”文档中SSH
:
但它例如出现在 Ubuntu 文档命令中:
在这里我很困惑,因为在 Ubuntu 的文档中,-T
参数出现在描述部分而不是概要部分。问题1:为什么会有这种差异?
顺便说一句,我在 Ubuntu 中执行apt update
了apt upgrade
好吧,当我执行$ ssh -T git@hostname
命令时,我没有收到有关-T
参数无效的错误。因此它是有效的,但它不会出现在第一个输出中。
问题2:-T
如果理论上是一个无效的参数,为什么没有失败的命令执行?
问题3:什么时候强制使用-T
?
Α
使用dpkg -l openssh-client
命令显示:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=============================================-===========================-===========================-===============================================================================================
ii openssh-client 1:7.6p1-4ubuntu0.3 amd64 secure shell (SSH) client, for secure access to remote machines
对于ssh -V
命令显示:
OpenSSH_7.6p1 Ubuntu-4ubuntu0.3, OpenSSL 1.0.2n 7 Dec 2017
T
实际上,在您编辑的概要部分中提到了该选项:用法描述在
man ssh
:基本上与以下相反
-t
:概要显示它喜欢
[some characters shown]
而不是喜欢[-p port]
,因为它是不带参数的(许多)选项之一。