在两台服务器之间传输列表中指定的数百个文件

在两台服务器之间传输列表中指定的数百个文件

我需要从一台服务器下载 800 个文件到我的服务器。这些文件有不同的名称,并且位于远程服务器的不同子目录中,但我有一个列表,上面有它们的名称。我怎样才能做到这一点,而不必逐一进行操作?我可以使用 scp 或 sftp,但我不知道如何提交要下载的文件列表。

多谢!

答案1

你应该能够做类似的事情:

wget http://the.source.of.it.all $(< /the/list/of/files/here)

甚至可以通过一个脚本来运行整个过程,该脚本遍历文件,从列表中读取一行并请求它。

您对 shell 编程了解多少?您对 Unix 命令行实用程序了解多少?您是否熟悉脚本语言,例如 Perl 或 Python?

答案2

sftp有一个-b选项可以从批处理文件中读取命令。批处理文件应包含命令列表,就像您在sftp>命令提示符下键入的命令一样。

您可以生成一个批处理文件,其中包含get要获取的每个文件的命令以及您需要发出的任何其他命令,例如lcdlmkdir文件放在正确的本地目录中。

相关内容