我有一个巨大的目录,我想将其作为 .tar.gz 文件复制到另一台机器。两台机器上都没有太多空间,所以我想通过管道复制文件,如下所示:
tar -czf - mydirectory | ssh other.machine.science "cat > file/location/myfile.tar.gz"
不过,我登录的计算机的 shell 设置为nologin
,因为我只能使用 scp 在计算机上复制文件。
如何将文件从管道复制到没有 shell 访问权限的系统?
答案1
您可以scp -r
递归地复制本地目录。与压缩的 tar 文件相比,这将在远程端使用更多的空间,但在无法解压的情况下复制此类文件似乎没有什么意义。
scp -r mydirectory other.machine.science:/path/to/newdirectory