Praweł Asked: 2010-12-14 07:19:23 +0800 CST2010-12-14 07:19:23 +0800 CST 2010-12-14 07:19:23 +0800 CST 如何将 SFTP 文件下载发送到后台? 772 是否有可能: 在远程机器上执行 sftp 命令并下载一个文件 ( ssh user@machine, sftp user2@server, get file) 然后,将下载发送到后台,这样我就可以关闭本地计算机 command-line sftp 4 个回答 Voted Best Answer wag 2010-12-14T08:01:56+08:002010-12-14T08:01:56+08:00 在机器 B 上尝试screen,然后开始下载并分离: 在机器 A 上: ssh user@B 在机器 B 上: screen sftp user@C get some_file.tar.gz Ctrl-a d logout 从未尝试过,但可以工作。 编辑:稍后,重新登录并用于screen -x重新连接到正在运行的会话。然后,正确关闭它,使其不消耗服务器的资源。 Ryan C. Thompson 2010-12-14T10:25:43+08:002010-12-14T10:25:43+08:00 如果您只想要屏幕的“分离”功能,有一个名为“dtach”的程序仅提供该功能。 armornick 2010-12-14T07:30:39+08:002010-12-14T07:30:39+08:00 将字符 &(和号)放在命令后面会在后台运行它。但是,我不知道在命令已经执行后该怎么做,也不知道这是否适用于远程机器。 Thecamelcoder 2011-06-27T21:59:13+08:002011-06-27T21:59:13+08:00 这个问题有很多解决方案。 一种选择是使用screen命令,但似乎有点复杂。 我发现的最好方法是将作业发送到后台。 在您的情况下,命令将是 scp user@machine:~/filename.ext /tmp & scp -r user@machine:~/dirname /tmp &
在机器 B 上尝试
screen
,然后开始下载并分离:在机器 A 上:
ssh user@B
在机器 B 上:
从未尝试过,但可以工作。
编辑:稍后,重新登录并用于
screen -x
重新连接到正在运行的会话。然后,正确关闭它,使其不消耗服务器的资源。如果您只想要屏幕的“分离”功能,有一个名为“dtach”的程序仅提供该功能。
将字符 &(和号)放在命令后面会在后台运行它。但是,我不知道在命令已经执行后该怎么做,也不知道这是否适用于远程机器。
这个问题有很多解决方案。
一种选择是使用
screen
命令,但似乎有点复杂。我发现的最好方法是将作业发送到后台。
在您的情况下,命令将是