Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PuTTY中启动SSH连接,运行命令,并保持会话处于活动状态_Ssh_Putty - Fatal编程技术网

在PuTTY中启动SSH连接,运行命令,并保持会话处于活动状态

在PuTTY中启动SSH连接,运行命令,并保持会话处于活动状态,ssh,putty,Ssh,Putty,每次通过PuTTY SSH连接到服务器时,我都想运行一些shell命令。我正在连接到由其他人管理的生产web服务器,我不想在那里存储我自己的脚本 我看到了选项Connection>SSH>Remote Command,但是如果在启动会话后将初始化命令放在那里,它会在命令执行后立即关闭。如何运行远程命令,然后保持会话打开,以便继续使用它?一个选项是设置putty远程命令,如下所示: ls > dir.ls & /bin/bash 在此示例中,您要运行的命令是“ls>dir.ls”,

每次通过PuTTY SSH连接到服务器时,我都想运行一些shell命令。我正在连接到由其他人管理的生产web服务器,我不想在那里存储我自己的脚本


我看到了选项Connection>SSH>Remote Command,但是如果在启动会话后将初始化命令放在那里,它会在命令执行后立即关闭。如何运行远程命令,然后保持会话打开,以便继续使用它?

一个选项是设置putty远程命令,如下所示:

ls > dir.ls & /bin/bash
在此示例中,您要运行的命令是“ls>dir.ls”,它创建了包含目录列表内容的文件dir.ls

当您想让shell保持打开状态时,您可以添加传统命令“/bin/bash”或您选择的任何其他shell。

命令完成后,SSH会话立即关闭(并用它填充)。默认情况下,“命令”是一个shell。由于您已覆盖此默认“命令”,但仍希望运行shell,因此您必须自己显式执行shell:

my-command ; /bin/bash

另请参见。

谢谢!通过打开外壳来完成命令是我需要的线索。我添加了
;bash
在我的“远程命令”字符串的末尾(您的
&/bin/bash
也可以工作),以启动bash并保持连接打开。当我退出bash时,Putty窗口也会像我预期的那样关闭,这很好。使用
&
,您可以与shell并行运行命令。在这种情况下,您通常不想要什么。您通常希望使用