如何将 PrintLastLog 选项传递给一次 ssh 运行(不更改 ssh_config)

如何将 PrintLastLog 选项传递给一次 ssh 运行(不更改 ssh_config)

我只想禁用PrintLastLog一次ssh命令运行的选项。

我尝试使用以下-o选项来传递它:

 ssh -q -o PrintLastLog=no localhost

但我得到:

command-line: line 0: Bad configuration option: printlastlog

我在文件中也没有看到该PrintLastLog选项SSH_CONFIG(5) man。是否有特殊且不能作为命令行标志传递的选项?

提出该问题的原因是我需要通过脚本 ssh 到多个服务器,并且我不希望 MOTD/login 消息堵塞脚本的日志输出。

答案1

你在那里看不到它,因为它是 sshd 的一个选项守护进程,而不是客户端。您无法从客户端更改服务器选项。

但是,如果您想要在脚本中执行 ssh 而不进行输出,那么您可以简单地将输出重定向到 /dev/null。示例:

for i in `< /file/with/hostnames`; do ssh $i hostname > /dev/null; done

当您使用 SSH 发出命令时,您获得的唯一输出就是来自该命令 - 您不会获得 MOTD 或横幅。而且由于您将该输出重定向到 /dev/null,因此您什么也得不到。

相关内容