PuTTY 选项:远程命令 =‘Top’/如何在‘q’命令后保留会话?

PuTTY 选项:远程命令 =‘Top’/如何在‘q’命令后保留会话?

示例 1)“未修改”的 PuTTY 登录到默认目录 >> 输入“Top”命令 >>> 输入“q”= 您返回到根(默认)目录。

示例#2)使用PuTTY设置选项remote command=“Top”>>从顶部输入“q”=立即注销(会话关闭)

示例 #3)与 #2 相同,但有 1 个区别:PuTTY remote command= echo "Hello World!"; top;

^^^ 回复#3:我原本以为短暂的停顿会回显(例如)Hello World!会模拟示例 #1,在“q”之后我会回到“主页”,但结果却等于 #2(会话已关闭)

快速摘要:这是其中之一“应该简单”;如何直接登录到“top”并在“q”之后仍然有会话?

...

.. 编辑:早上这个时候答案涌现得出奇地快!

注销:未登录 shell:使用‘exit’

以下是运行最佳的确切代码:

top; /bin/bash -il

我现在也在测试 Phil 的代码,他的代码实际上是一样的。

答案1

SSH 通过将远程命令传递给您配置的 shell 来执行该命令。如果您使用远程命令打开 PuTTY top,则 SSH 将运行以下命令:

$SHELL -c "top"

当使用该-c参数运行时,一旦命令终止,shell 也会终止,这会导致会话结束。

要运行 top 并保持登录状态,可以使用远程命令top; $SHELL -l。这将运行 top,然后启动登录 shell。

答案2

它正在将您注销,因为您告诉 putty 在您的远程会话中只运行一个命令,即 top。

你可以创建一个文件~/bin/topsh,内容如下

#!/bin/bash
top
exec bash

并使用 putty 的“远程命令”选项尝试运行它;一旦您离开 top,会话将被 bash shell 覆盖,当您离开时,您应该自动注销。

答案3

尝试将您的远程命令更改为

top; bash

答案4

最好的办法是查看 top 的批处理模式。您可以执行类似操作top -n1 -b来获取系统快照。我不知道有什么方法可以让 top 在退出时停止清除屏幕。

相关内容