linux命令打包压缩,linux如何打包压缩

Linux中用tar命令对文件夹进行打包压缩

打包: 指将多个文件(或目录)合并成一个文件,方便在不同节点之间传递或在服务器集群上部署.

我们拥有10余年网页设计和网站建设经验,从网站策划到网站制作,我们的网页设计师为您提供的解决方案。为企业提供网站设计制作、做网站、微信开发、微信平台小程序开发成都做手机网站H5页面制作、等业务。无论您有什么样的网站设计或者设计方案要求,我们都将富于创造性的提供专业设计服务并满足您的需求。

压缩或打包文件常见扩展名: *.tar, *.tar.gz, *.gz, *.bz2, *.Z;

Linux系统一般文件的扩展名用途不大,但是压缩或打包文件的扩展名是必须的.因为linux支持的压缩命令较多,不同的压缩技术使用的压缩算法区别较大,根据扩展名能够使用对应的解压算法.

将文件夹打包,也能将包解开成文件夹.

例1: 在/tmp文件夹下创建demo文件夹,将/etc目录拷贝到/tmp/demo目录里,然后打包压缩成gz格式,要求显示压缩详情。

1)在/tmp文件夹下创建demo文件夹,将/etc目录拷贝到/tmp/demo目录里.

注意: 拷贝非空目录要加 -r

2)将etc文件夹打包压缩成gz格式,并显示压缩详情.

tar -czvf 打包压缩后文件名 被打包压缩的文件夹

如果打包压缩成.bz2格式,那么tar命令的参数: -cjvf.

例2: 先删除etc目录,解压缩myetc.tar.gz到当前目录.

1)删除etc目录

2)解压缩myetc.tar.gz到当前目录

例3: 将myetc.tar.gz解压缩到指定目录/home

例4: 仅仅解压缩myetc.tar.gz里的某个目录,例如etc/udev

1)先删除etc目录

2)解压缩myetc.tar.gz到etc/udev目录

linux tar打包、解包命令

解压

语法:tar [主选项+辅选项] 文件或者目录

使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。

主选项:

c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。相当于打包。

x 从档案文件中释放文件。相当于拆包。

t 列出档案文件的内容,查看已经备份了哪些文件。

特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。

辅助选项:

-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩或解压? 一般格式为xx.tar.gz或xx. tgz

-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩或解压?一般格式为xx.tar.bz2

-v :压缩的过程中显示文件!这个常用

-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加其他参数!

-p :使用原文件的原来属性(属性不会依据使用者而变)

--exclude FILE:在压缩的过程中,不要将 FILE 打包!

范例:

范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar

[root@linux ~]# tar -cvf /tmp/etc.tar /etc==仅打包,不压缩!

[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc==打包后,以 gzip 压缩

[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc==打包后,以 bzip2 压缩

特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。

如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~

如果加 j 参数,则以 .tar.bz2 来作为附档名啊~

上述指令在执行的时候,会显示一个警告讯息:

『tar: Removing leading `/" from member names』那是关於绝对路径的特殊设定。

范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件?

[root@linux ~]# tar -ztvf /tmp/etc.tar.gz

由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,

就得要加上 z 这个参数了!这很重要的!

范例三:将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下

[root@linux ~]# cd /usr/local/src

[root@linux src]# tar -zxvf /tmp/etc.tar.gz

在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说

我先将工作目录变换到 /usr/local/src 底下,并且解开 /tmp/etc.tar.gz

则解开的目录会在 /usr/local/src/etc ,另外,如果您进入 /usr/local/src/etc

则会发现,该目录下的文件属性与 /etc/ 可能会有所不同喔!

范例四:在 /tmp 底下,我只想要将 /tmp/etc.tar.gz 内的 etc/passwd 解开而已

[root@linux ~]# cd /tmp

[root@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd

我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件,

就可以透过这个方式来下达!注意到! etc.tar.gz 内的根目录 / 是被拿掉了!

范例五:我要备份 /home, /etc ,但不要 /home/dmtsai

[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

另外:tar命令的C参数

$ tar -cvf file2.tar /home/usr2/file2

tar: Removing leading '/' from members names

home/usr2/file2

该命令可以将/home/usr2/file2文件打包到当前目录下的file2.tar中,需要注意的是:

使用绝对路径标识的源文件,在用tar命令压缩后,文件名连同绝对路径(这里是home/usr2/,根目录'/'被自动去掉了)一并被压缩进来

。使用tar命令解压缩后会出现以下情况:

$ tar -xvf file2.tar

$ ls

…… …… home …… ……

解压缩后的文件名不是想象中的file2,而是home/usr2/file2。

$ tar -cvf file2.tar -C /home/usr2 file2 该命令中的-C dir参数,将tar的工作目录从当前目录改为/home/usr2,将file2文件(不带绝对路径)压缩到file2.tar中。注意

:-C dir参数的作用在于改变工作目录,其有效期为该命令中下一次-C dir参数之前

使用tar的-C dir参数,同样可以做到在当前目录/home/usr1下将文件解压缩到其他目录,例如:

$ tar -xvf file2.tar -C /home/usr2

而tar不用-C dir参数时是无法做到的:

$ tar -xvf file2.tar /home/usr2

tar: /tmp/file: Not found in archive

tar: Error exit delayed from previous errors

Linux打包和压缩

主要针对单个文件压缩,而非目录

此工具来自于ncompress包,此工具目前已经很少使用

对应的文件是 .Z 后缀

格式

常用选项

范例

zcat file.Z 不显式解压缩的前提下查看文本文件内容

范例

来自于 gzip 包

对应的文件是 .gz 后缀

格式

常用选项

范例

范例

来自于 bzip2 包

对应的文件是 .bz2 后缀

格式

常用选项

范例

来自于 xz 包

对应的文件是 .bz2 后缀

选项

范例

zip 可以实现打包目录和多个文件成一个文件并压缩,但可能会丢失文件属性信息,如:所有者和组信息,一般建议使用 tar 代替

分别来自于 zip 和 unzip 包

选项

范例

范例:交互式加密和解密

范例: 非交互式加密和解密

tar 即 Tape ARchive 磁带归档,可以对目录和多个文件打包一个文件,并且可以压缩,保留文件属性不丢失,常用于备份功能,推荐使用

对应的文件是 .tar 后缀

格式

选项

(1)创建归档,保留权限

(2)追加文件至归档:注:不支持对压缩文件追加

(3) 查看归档文件中的文件列表

(4) 展开归档

(5) 结合压缩工具实现:归档并压缩

范例

范例

范例

split 命令可以分割一个文件为多个文件

范例

将多个切割的小文件合并成一个大文件

cpio 是历史悠久的打包和解包工具,不过目前也已较少使用

cpio 命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以“.cpio”或者“.tar”结尾的文件

格式

常用选项

范例

「方法」Linux下将文件打包、压缩并分割成指定大小

tar -zcvf cm-11.tar.gz cm-11

//将cm-11文件夹压缩成cm-11.tar.gz

split -b 4000M -d -a 1 cm-11.tar.gz cm-11.tar.gz.

//使用split命令,-b 4000M 表示设置每个分割包的大小,单位还是可以k

// -d "参数指定生成的分割包后缀为数字的形式

//-a x来设定序列的长度(默认值是2),这里设定序列的长度为1

执行命令后,生成压缩包如下:

tar -zcvf cm-11.tar.gz cm-11 | split -b 4000M -d -a 1 - cm-11.tar.gz.

//采用管道,其中 - 参数表示将所创建的文件输出到标准输出上

tar -zxvf cm-11.tar.gz

cat cm-11.tar.gz.* | tar -zxv

tar可以用来压缩打包单文件、多个文件、单个目录、多个目录。

Linux打包命令 tar

tar命令可以用来压缩打包单文件、多个文件、单个目录、多个目录。

常用格式:

单个文件压缩打包 tar -czvf my.tar.gz file1

多个文件压缩打包 tar -czvf my.tar.gz file1 file2,...(file )(也可以给file 文件mv 目录在压缩)

单个目录压缩打包 tar -czvf my.tar.gz dir1

多个目录压缩打包 tar -czvf my.tar.gz dir1 dir2

解包至当前目录:tar -xzvf my.tar.gz

cpio

含子目录find x* | cpio -o /y/z.cpio

不含子目录ls x* | cpio -o /y/z.cpio

解包: cpio -i /y/z.cpio

[root@linux ~]# tar [-cxtzjvfpPN] 文件与目录 ....

参数:

-c :建立一个压缩文件的参数指令(create 的意思);

-x :解开一个压缩文件的参数指令!

-t :查看 tarfile 里面的文件!

特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!

因为不可能同时压缩与解压缩。

-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?

-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?

-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

 例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成

 『 tar -zcvPf tfile sfile』才对喔!

-p :使用原文件的原来属性(属性不会依据使用者而变)

-P :可以使用绝对路径来压缩!

-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!

--exclude FILE:在压缩的过程中,不要将 FILE 打包!

linuxstudent怎么尝试压缩命令

一般在linux下可以通过tar命令实现打包和压缩(或解压)。

tar-zcvffilefile.tar.gz打包并压缩成gzip格式,其中-c命令是创建tar包,-z参数是指定压缩成gzip格式。

ttar-zxvffile.tar.gz解包命令,其中-x是解包命令,-z指定解压缩格式是gzip。

ttar-jcvffilefile.tar.bz2打包并压缩成bzip2格式,其中-c是创建tar包,-j参数指定压缩成bzip2格式。tar-zxvffile.tar.gz解包命令,其中-x是解包命令,-j指定解压缩格式是bzip2。

linux打包压缩命令tar

linux打包压缩命令tar的方法如下:

操作设备:戴尔笔记本电脑

操作系统:win10

操作程序:linux主机2.01

1、首先进入到等待输入shell指令的linux命令行状态下,如下图所示。

2、输入shell指令:tar -czf test.tar.gz test.txt,如下图所示。

3、最后按下回车键就会看到test.txt被成功压缩为test.tar.gz,如下图所示。


本文标题:linux命令打包压缩,linux如何打包压缩
URL分享:http://azwzsj.com/article/dsiches.html