繁体   English   中英

具有永久ShellExec连接的SharpSSH

[英]SharpSSH with Persistent ShellExec connections

我正在使用SharpSSH连接到SSH服务器,并且尝试使用SshShell和SshExec。 我需要能够接受一系列命令并将它们按顺序发送到服务器,因此SshShell并不能真正满足我的需要,因为我不得不一直纠缠流,而且似乎有点麻烦忽悠。 因此,我尝试了SshExec,但是发现了一个问题,每次我发送命令时,它似乎都建立了新的连接,并且丢失了最后一条命令的上下文。 例如,如果我运行以下命令:

pwd
cd .ssh
pwd

我希望它能输出

/home/adam

/home/adam/.ssh

但是,相反,它两次都只输出“ / home / adam”,这意味着在两次更改之间丢失了目录更改。

有没有一种方法可以配置它,使其保持与SSH服务器的恒定连接,直到我告诉它断开连接?

做这个:

exec.RunCommand("pwd; cd Desktop; pwd")

我不确定如何执行高级命令,但是我尝试了它,并输出:

/Users/MyUser
/Users/MyUser/Desktop

要CD到隐藏目录(任何以点(。)字符开头的目录),您需要将该值括在引号中。

根据文档

4)如果目录操作数的第一部分是点或点-点,请继续执行步骤6。

6)将curpath设置为由PWD值,斜杠字符和操作数的串联组成的字符串。

简而言之, cd '.ssh'应该可以解决问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM