我有这个问题,我有一个 Ubuntu 服务器(在端口上启用了 SSH 4444
)。在该服务器内部有一个名为 的目录/folder/a/
,该目录字面上地包含数百万个小尺寸文本文件。
我想做的是找到一些从这数百万个文件中提取数千个文件,并将这些文件复制或传输到我的本地电脑,即使用find
命令。使用时scp
否则cpio
无法正常使用。
您对如何从我的本地电脑(即)执行此操作有任何建议吗不是从我的远程服务器上运行 ssh 终端。
答案1
rsync -e 'ssh -p 4444' -a --include="pattern you want" --exclude="*" $S:/folder/a ~/copy
或者
ssh -p 4444 $S "find /folder/a -name 'pattern you want' | tar -cO -T -" > ~/copy.tar
或者
rsync -e 'ssh -p 4444' -a --files-from=<(ssh -p 444 $S find /folder/a -name 'pattern you want') $S:/folder/a ~/copy