压缩远程服务器文件夹和文件并将它们复制到我的本地驱动器

use*_*221 2 linux bash

我有一个可以使用 ssh 和 plesk 访问的 linux 专用服务器。我的服务器上没有足够的空间来压缩我的所有文件夹和文件,然后将它们 scp 到我的本地计算机上。

是否有 bash 命令可以直接在我的本地驱动器上压缩远程文件?

the*_*bit 6

如果您的“本地驱动器”是 linux 客户端,您可能只使用远程 tar 命令将输出打印到标准输出(默认情况下,显式选项规范是“-f -”)并将其通过管道传输到读取的本地 tar从标准输入(再次显式选项“-f -”)像这样:

ssh your.dedicated.server 'tar -czf - /my/files/to/back/up' | tar -xzf -
Run Code Online (Sandbox Code Playgroud)

使用“-z”选项时,Tar 将使用 gzip 的默认压缩级别 (6) 压缩您的数据。如果您想要更好的压缩率并有空闲的 CPU 周期,您可以改用“-j”,但如果它是具有快速链接的旧/虚拟机,您最终可能会获得整体较低的传输速率。

哦,作为一个编辑:您可以为 SCP 指定 -C(压缩)选项,这也将使用 gzip 作为压缩算法,尽管压缩率通常会略低于 tar/gzip 组合。输入更少,您将获得漂亮的进度指示器作为奖励。