扬州城市论坛 百科 Linux下打包命令的使用

Linux下打包命令的使用

在Unix系统的业务使用中(尤其是数据管理和备份),经过一番研究和整理,我充分利用Unix系统的命令tar、cpio、compress进行打包压缩,使其充当类似于DOS的压缩软件,在Unix系统中也是通用的。

在Unix系统中,许多文件通过cpio或tar封装成一个文件库,然后通过compress对文件库进行压缩。下面分别用cpio和tar描述所用的方法和步骤。

一. cpio

1.文件或目录打包。

包装有如下多种情况:

a)带子目录的包:

find/usr/lib-print | cpio-o \8592;/u0/temp 1 . cpio

将/usr /lib目录中的文件和子目录打包到名为/u0/temp1.cpio的文件库中。

如果用-o选项打包整个目录下的所有文件和子目录,那么经常用find directory name - print找出所有文件和子目录的名称,通过管道“|”将文件和子目录传输到cpio进行打包。

b)没有子目录的打包:

ls/usr/lib | cpio-o \\/u0/temp 1 . cpio

将/usr/lib目录下的文件(不包括子目录下的文件)打包到文件库/u0/temp1.cpio中。

c)特定文件的打包:

在文本搜索命令grep和pipeline的帮助下,可以排除或选择要发送到cpio进行打包的特定类型的文件。例如ls/usr/lib/*。c | cpio-o >/u0/temp1.cpio。

或者ls/usr/lib | grep。c $' | cpio-o >/u0/temp1.cpio。

意思是找到以结尾的文件。c放在/usr/lib目录中,并将它们打包。

再比如:ls/usr/lib | grepabcd | cpio-o >/u0/temp 1 . cpio,意思是把/usr/lib目录中带有abcd字符的文件找出来打包。

ls/usr/lib | grep-v abcd | cpio-o >/u0/temp 1 . cpio,意思是找出/usr/lib目录中没有ABCD字符的文件并打包。grep命令中的-v选项意味着排除包含字符串的行和列。

这样就可以充分利用Unix管道和一些命令的强大功能来打包文件。

2.压缩:

文件打包后,您可以使用Unix中的compress命令(在/usr/bin下)来压缩打包的文件。对于一般的文本文件,压缩率更高,最高可达81%。

Compress /u0/temp1.cpio将文件库/u0/temp1.cpio压缩成/u0/temp1.cpio.Z(自动添加。z并删除/u0/temp1.cpio)。

3.解压:

解压缩/u0/temp1.cpio.Z会自动恢复到/u0/temp1.cpio.

4.拆包和展开:

按照原来的目录结构解包,展开到当前目录。如果是以相对路径打包的,在解包和展开时,展开的文件数据也存储在相对路径中;如果以绝对路径打包,那么在解包和展开时,展开的文件数据也存储在绝对路径中。所以如果是相对路径,应该先输入对应的目录,然后展开。

cd /u1

Cpio-id

如果添加了u选项,比如cpio-iud

Cpio-id

5.显示:

Cpio-it

第二,焦油

1.文件或目录打包:

tar -cvf /u0/temp2.tar /usr/lib

将/usr/lib目录中的文件和子目录打包到名为/u0/temp2.tar的文件库中。

tar -cvf /u0/temp2.tar /usr/lib *。c *。f

打包文件(不包括子目录),如*。c * *。c *。f在/usr/lib目录中。

注意:如果指定一个文件,如*。c * *。c *。f或*。*,它将被打包,没有子目录。如果指定为。或者*,有子目录。

2.压缩:

同上:compress /u0/temp2.tar压缩成/u0/temp2.tar.z。

3.解压:

解压缩/u0/temp2.tar.Z恢复到/u0/temp2.tar。

4.拆包和展开:

tar -xvf /u0/temp2.tar

如果是用相对路径打包的,解包时,扩展后的文件数据会用相对路径存储;如果是以绝对路径打包,那么解包时,扩展后的文件数据会以绝对路径存储。

如果指定扩展文件名,应该注意文件的目录路径。

5.显示:

Tar tar -tvf /u0/temp2.tar显示文件库中的文件名。指定文件名时,还应该注意文件的路径。

相对来说,这两个命令各有利弊。

1)tar比cpio慢,不能跨两个存储介质,但文件格式在几乎所有Unix系统中通用,易于使用。

2)因为2)cpio可以通过管道函数,所以在打包时有非常强的文件选择和排除功能,可以跨多个介质,备份特殊的系统文件。

此外,压缩命令compress在DOS下的压缩率低于Pkzip。经测试,一个目录下共15.7MB的527个文本文件,在Unix下打包,用compress压缩,大小为2.1MB。如果把同一个文件拷贝到DOS系统,用Pkzip压缩,大小是1.4MB。

本文来自网络,不代表本站立场,转载请注明出处:https://baike.yzcslt.com/n/a2956.html

Linux下打包命令的使用

扬州城市论坛后续将为您提供丰富、全面的关于Linux下打包命令的使用内容,让您第一时间了解到关于Linux下打包命令的使用的热门信息。小编将持续从百度新闻、搜狗百科、微博热搜、知乎热门问答以及部分合作站点渠道收集和补充完善信息。