我在服务器 A 上有 160 万个文件,其中只有大约 2 万个文件需要到达服务器 B。目标服务器 B 位于 GoDaddy 共享主机上,因此我只能使用 scp 一次传输多个文件。
我想从 SQL 查询中生成那些 20k+ 个文件的 .txt 文件,然后将该列表提供给 scp。是否有任何选项可以这样做?
cat /proc/version 给我 Linux version 2.6.32-531.23.3.lve1.2.65.el6.x86_64 (mockbuild@koji.cloudlinux.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Tue Aug 19 10:37:27 EDT 2014
小智 15
如果您已经创建了文本文件,请执行以下操作
cat /location/file.txt | xargs -i scp {} user@server:/location
Run Code Online (Sandbox Code Playgroud)
这将逐行输出 file.txt 并每行运行 scp 命令;我希望这有帮助。
考虑rsync作为替代方案,它具有内置的 ssh 支持并支持使用--files-from.
例子:
rsync -av --progress --partial-dir=/tmp --files-from=file_list.txt . me@example.com:/dest
Run Code Online (Sandbox Code Playgroud)
与 scp 相比的优势:
scp从不同rsync?也可以看看:
| 归档时间: |
|
| 查看次数: |
18730 次 |
| 最近记录: |