如何压缩整个Linux或UNIX目录?
时间:2020-01-09 14:16:39 来源:igfitidea点击:
如何使用shell提示在Linux/UNIX下压缩整个目录?压缩整个Linux/UNIX目录非常容易。备份文件,通过电子邮件发送所有文件,甚至将您创建的软件发送给朋友都非常有用。从技术上讲,它称为压缩存档。
GNU tar或BSD tar命令最适合此工作。它可以在远程Linux或UNIX服务器上使用。它为您做两件事:
=>创建档案
=>压缩档案
=>其他操作包括列出或更新档案
如何在Linux或Unix中压缩整个目录
解决方法:您需要按以下方式使用tar命令(tar命令的语法):
tar -zcvf archive-name.tar.gz directory-name
其中:
- -z:在Linux或Unix中使用gzip程序压缩档案
- -c:在Linux上创建档案
- -v:详细,即在创建存档时显示进度
- -f:存档文件名
例如,假设您有一个名为/home/jerry/prog的目录,并且要压缩此目录,则可以按如下所示执行tar命令:
$ tar -zcvf prog-1-jan-2005.tar.gz /home/jerry/prog
上面的命令将在当前目录中创建一个名为prog-1-jan-2005.tar.gz的存档文件。
如果要还原存档,则需要使用以下命令(它将提取当前目录中的所有文件):
$ tar -zxvf prog-1-jan-2005.tar.gz
其中:
- -x:从给定档案中提取文件
如果要提取特定目录中的文件,例如/tmp中的文件,则需要使用以下命令:
$ tar -zxvf prog-1-jan-2005.tar.gz -C /tmp $ cd /tmp $ ls
将整个目录压缩为单个文件
要将名为/home/Hyman/bin /的目录压缩到/tmp/bin-backup.tar.gz中,请在Linux上执行tar命令:
tar -zcvf /tmp/bin-backup.tar.gz /home/Hyman/bin/
您也可以压缩多个目录:
tar -zcvf my-compressed.tar.gz /path/to/dir1/ /path/to/dir2/
关于非gnu/tar命令的说明
上面的语法使用GNU tar命令来压缩和解压缩tar文件。
如果您的系统不使用GNU tar,您仍然可以通过以下语法创建压缩的tar文件:
tar -cvf - file1 file2 dir3 | gzip > archive.tar.gz
如何使用bzip2压缩而不是gzip压缩
语法为:
tar -jcvf my-compressed.tar.bz2 /path/to/dir1/
- -j:在Linux或Unix中使用bzip2程序压缩档案
- -c:在Linux上进行存档
- -v:详细输出
-f my-compressed.tar.bz2
:将存档存储在my-compressed.tar.bz2文件中