焦油管道到拆分管道到 scp

Dan*_*uus 6 shell bash scp tar split

所以我试图通过SCP传输一堆文件。其中一些太大而无法存储在收件人中(Android 手机,4GB 文件大小限制)。

发件人几乎没有空间,所以我无法在本地创建中间文件。

我想对这些文件进行 tar 压缩并通过 split 将其流式传输,以便我可以获得手机可以接受的较小片段,即本地命令:

tar -cvf - ~/batch/ | split --bytes=1024m - batch.tar.seg
Run Code Online (Sandbox Code Playgroud)

但我不确定如何将其通过管道传输到 scp 以获取电话。根据对这篇文章的评论,这是可能的,但我首先不太明白他在说什么,其次我不确定如何实现这一点,因为 split 会输出多个文件。

有任何想法吗?

Sté*_*las 5

如果收件人有split,那么您可以执行以下操作:

tar -cvf - ~/batch/ | gzip |
  ssh recipient 'cd /destination &&
    split --bytes=1024m - batch.tar.gz.seg'
Run Code Online (Sandbox Code Playgroud)