Answers:
用途tar
:
tar -cf my_big_folder.tar /my/big/folder
使用还原文件 tar -xf my_big_folder.tar -C /
-C将切换到根目录以还原您的档案,因为上面创建的档案包含绝对路径。
编辑:由于档案的大小相对较大,因此最好使用SSH或云资源/文件夹的安装点将其[直接]发送到其最终位置。例如,正如科尔·约翰逊(Cole Johnson)建议的那样:
tar -cf /network/mount/point/my_big_folder.tar /my/big/folder
要么
tar -c /my/big/folder | ssh example.com "cat > my_big_folder.tar"
编辑:正如Blacklight Shining所建议的那样,如果要避免使用绝对路径,则可以更改为大文件夹的父文件夹,然后tar
从那里:
tar -cf /network/mount/point/my_big_folder.tar \
-C /my/big/folder/location the_big_folder
要么
tar -cC /my/big/folder/location the_big_folder | \
ssh example.com "cat > my_big_folder.tar"
是否包括相对路径或绝对路径是个人喜好问题。
在某些情况下,绝对路径是显而易见的,例如在灾难恢复情况下进行还原。对于本地项目或集合,通常会从所需文件夹的父目录中存档目录树,以免造成当前目录混乱,以防意外将存档解压缩。如果big_folder位于标准* NIX层次结构的某个深处,则开始归档big_folder偏离的第一个非标准文件夹及其目录树是有意义的。
最终-在这里要花哨的- tar
存档成员始终是相对的,因为a)他们可以在任何目录中还原,并且b) 在创建存档时tar
删除/
开头。我个人倾向于在解压缩存档文件时始终使用-C。
tar -cf /network/mount/point/folder.tar /folder
的,而不是tarring到本地计算机,然后上传,如果你能
tar -cf $archive.tar -C $source_dir .
。如果目标计算机没有与源目录具有相同路径的目录,则需要这样做。-C
提取(mkdir $destination_dir && tar -xf $archive.tar -C $destination_dir
)时,请确保进入新目录;否则存档内容会被人抛弃到任何目录你碰巧英寸
备选:cpio
(cd /my/big/folder && find . -depth -print0 | cpio -0o > myfolder.cpio)
解压缩到当前目录:
cpio -id < myfolder.cpio
注意事项:
find /my/big/folder
而不是cd
,则归档文件将包含完整路径,并且提取将尝试遵循它们。
tar
在Linux中有命令。tar -cf long.file.tar folder