我是一个unix noob,但这个问题似乎超级基本,但我无法find答案的任何地方。
基本上,据我所知,sFTP只是FTP over ssh。 所以,为什么我不能像在ssh上那样将文件从一个文件夹拖放到服务器端的另一个文件夹中。 为什么当我想要在服务器文件夹中解压缩一个.tar文件时,是否首先要将它复制到我的机器上,然后再返回? 为什么不能在我使用命令行的时候解压。 我知道,当我使用命令行它使用远程机器的资源,但为什么不能sFTP也这样做呢?
有没有办法执行我通常会通过SSH执行的命令,但在一个GUI? 我试图映射到我自己的机器的驱动器,我已经尝试了这么多的sFTP客户端,这是愚蠢的。 还有另外一类我不知道的课程吗?
我知道,当我使用命令行它使用远程机器的资源,但为什么不能sFTP也这样做呢?
因为这是一个文件传输协议,而不是远程shell。
你真的在这里回答了你自己的问题 – 只是启动一个ssh会话,并解除你的内容。
我使用一个名为WinSSHd的程序,并使用名为“Tunnelier”的附带程序,它具有一个通过WinSSHd托pipe的SSH端口的FTP gui。
所以,显然,你不能使用WinSSHd的Unix,但你可以使用Tunnelier的 Windows客户端连接到你的Unix SSH守护进程,并做你的FTP。
正如已经指出的那样,SSH和SFTP是不同的东西,但是对于您描述的具体情况,SSHFS / SFTP客户端应该理解您的请求,并尝试直接在远程机器上进行解压缩(您正在连接的),而不是把它解下来,解压缩并复制结果。
我想现在这种情况越来越普遍,大量的人在家里只有几乎只有存储系统,运行着…… Ubuntu,并在那里托pipe大量的文件。 我想这不会是很难编程(执行unzip / unrar / $ WHATEVER_FILE_MANIPULATION所需的代码),您应该要求软件提供商编写该function。 我会支持它的GNU / Linux平台。