24小时热门版块排行榜    

查看: 397  |  回复: 1
当前主题已经存档。

sbttmxk

金虫 (著名写手)

[交流] Linux操作系统打包命令使用技巧详解(转贴)

Linux操作系统打包命令使用技巧详解(转贴)

  本人在Unix系统业务使用(特别是数据管理与备份)中,经过一番研究、整理后,充分利用Unix系统本身的命令tar、cpio和compress等来做到打包和压缩,使之充当类似DOS下的压缩软件,同时在Unix系统中亦具有通用性。

  在Unix系统中,是先通过cpio或tar将众多的文件打包成一个文件库后,再用compress将文件库压缩来达到目的的。下面分别以cpio和tar来说明使用的方法和步骤。


  一、cpio

  1.文件或目录打包。

  打包有如下多种情况:

  A)含子目录打包:

  find /usr/lib -print|cpio -o〉/u0/temp1.cpio

  将/usr /lib目录下的文件与子目录打包成一个文件库为/u0/temp1.cpio。

  若通过-o选项来打包整个目录下的所有文件与子目录,常先利用find目录名-print来找出所有文件与子目录的名称,通过管道“|”传给cpio打包。

  B)不含子目录的打包:

  ls /usr/lib|cpio -o〉/u0/temp1.cpio

  将/usr/lib目录下的文件(不含子目录下的文件)打包成一个文件库为/u0/temp1.cpio。

  C)特定文件打包:

  可利用文本搜索命令grep与管道配合,可以排除或选择特定类型的文件传给cpio打包。如:ls /usr/lib/*.c|cpio -o〉/u0/temp1.cpio

  或ls /usr/lib|grep ′.c$′|cpio -o〉/u0/temp1.cpio

  意思均为找出/usr/lib目录下以.c结尾的文件予以打包。

  又如:ls /usr/lib|grep abcd|cpio -o〉/u0/temp1.cpio ,其意为找出/usr/lib目录下文件名中含有abcd字符的文件予以打包。

  ls /usr/lib|grep -v abcd|cpio -o〉/u0/temp1.cpio,其意为找出/usr/lib目录下文件名中不含 abcd 字符的文件予以打包。-v选项在grep命令中的意思是排除含有字符串的行列。

  如此,可充分利用Unix的管道和一些命令的强大功能来实现文件的打包。

  本人在Unix系统业务使用(特别是数据管理与备份)中,经过一番研究、整理后,充分利用Unix系统本身的命令tar、cpio和compress等来做到打包和压缩,使之充当类似DOS下的压缩软件,同时在Unix系统中亦具有通用性。

  在Unix系统中,是先通过cpio或tar将众多的文件打包成一个文件库后,再用compress将文件库压缩来达到目的的。下面分别以cpio和tar来说明使用的方法和步骤。

  二、cpio

  1.文件或目录打包。

  打包有如下多种情况:

  A)含子目录打包:

  find /usr/lib -print|cpio -o〉/u0/temp1.cpio

  将/usr /lib目录下的文件与子目录打包成一个文件库为/u0/temp1.cpio。

  若通过-o选项来打包整个目录下的所有文件与子目录,常先利用find目录名-print来找出所有文件与子目录的名称,通过管道“|”传给cpio打包。

  B)不含子目录的打包:

  ls /usr/lib|cpio -o〉/u0/temp1.cpio

  将/usr/lib目录下的文件(不含子目录下的文件)打包成一个文件库为/u0/temp1.cpio。

  C)特定文件打包:

  可利用文本搜索命令grep与管道配合,可以排除或选择特定类型的文件传给cpio打包。如:ls /usr/lib/*.c|cpio -o〉/u0/temp1.cpio

  或ls /usr/lib|grep ′.c$′|cpio -o〉/u0/temp1.cpio

  意思均为找出/usr/lib目录下以.c结尾的文件予以打包。

  又如:ls /usr/lib|grep abcd|cpio -o〉/u0/temp1.cpio ,其意为找出/usr/lib目录下文件名中含有abcd字符的文件予以打包。

  ls /usr/lib|grep -v abcd|cpio -o〉/u0/temp1.cpio,其意为找出/usr/lib目录下文件名中不含 abcd 字符的文件予以打包。-v选项在grep命令中的意思是排除含有字符串的行列。

  如此,可充分利用Unix的管道和一些命令的强大功能来实现文件的打包。

  2.压缩:

  同上:compress /u0/temp2.tar压缩为/u0/temp2.tar.Z

  3.解压:

  uncompress /u0/temp2.tar.Z则还原为/u0/temp2.tar。

  4.解包展开:

  tar -xvf /u0/temp2.tar

  若以相对路径打包的,解包时,以相对路径存放展开的文件数据;若以绝对路径打包的,解包时,以绝对路径存放展开的文件数据。

  若指定展开的文件名,须注意文件的目录路径。

  5.显示:

  tar -tvf /u0/temp2.tar 显示文件库内的文件名称。当指定文件名时,亦须注意文件的路径。

  相对来说这两个命令各有优缺点。

  1)tar速度比cpio慢,且不能跨越两份存储媒体,但文件格式几乎在所有的Unix系统中都能通用,且使用简便。

  2)cpio则由于可通过管道功能,使得其打包时的文件选择、排除功能非常强,且能跨越多份媒体,并能备份特殊的系统文件。

  另外,压缩命令compress比DOS下的Pkzip的压缩率要低些。经测试,在一个目录下527个文本文件共15.7MB,在Unix打包后用compress压缩,大小为 2.1MB;相同的文件拷到DOS系统用Pkzip压缩,则大小为1.4MB。

[ Last edited by 幻影无痕 on 2006-10-24 at 07:50 ]
回复此楼

» 猜你喜欢

Do one thing, do it well. http://www.nanost.net/bbs/index.php
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

crazyer

新虫 (初入文坛)

0.5

лл
2楼2006-06-26 01:02:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 sbttmxk 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 0856材料专硕353求调剂 +5 NIFFFfff 2026-03-20 5/250 2026-03-24 11:46 by 544594351
[考研] 08工学调剂 +7 用户573181 2026-03-20 12/600 2026-03-24 11:17 by 用户573181
[考研] 284求调剂 +3 yanzhixue111 2026-03-23 6/300 2026-03-23 22:58 by pswait
[考研] 一志愿中南大学化学学硕0703总分337求调剂 +5 niko- 2026-03-22 5/250 2026-03-23 22:01 by fuyu_
[考研] 一志愿西安交通大学材料工程专业 282分求调剂 +11 枫桥ZL 2026-03-18 13/650 2026-03-22 20:26 by edmund7
[考研] 一志愿中南化学(0703)总分337求调剂 +9 niko- 2026-03-19 10/500 2026-03-22 16:08 by ColorlessPI
[考研] 一志愿 西北大学 ,070300化学学硕,总分287,双非一本,求调剂。 +3 晨昏线与星海 2026-03-20 3/150 2026-03-22 16:00 by ColorlessPI
[考研] 生物学调剂 +5 Surekei 2026-03-21 5/250 2026-03-22 14:39 by tcx007
[基金申请] 山东省面上项目限额评审 +4 石瑞0426 2026-03-19 4/200 2026-03-22 08:50 by Wei_ren
[考研] 286分人工智能专业请求调剂愿意跨考! +4 lemonzzn 2026-03-17 8/400 2026-03-21 22:49 by lemonzzn
[考研] 一志愿南大,0703化学,分数336,求调剂 +3 收到VS 2026-03-21 3/150 2026-03-21 18:42 by 学员8dgXkO
[考研] 求助 +5 梦里的无言 2026-03-21 6/300 2026-03-21 17:51 by 学员8dgXkO
[考研] 332求调剂 +3 凤凰院丁真 2026-03-20 3/150 2026-03-21 10:27 by luoyongfeng
[考研] 南昌大学材料专硕311分求调剂 +6 77chaselx 2026-03-20 6/300 2026-03-21 07:24 by JourneyLucky
[考研] 083200学硕321分一志愿暨南大学求调剂 +3 innocenceF 2026-03-17 3/150 2026-03-21 02:35 by JourneyLucky
[考研] 考研调剂求学校推荐 +3 伯乐29 2026-03-18 5/250 2026-03-20 22:59 by JourneyLucky
[考研] 一志愿苏州大学材料求调剂,总分315(英一) +5 sbdksD 2026-03-19 5/250 2026-03-20 22:10 by luoyongfeng
[考研] 求调剂一志愿南京航空航天大学289分 +3 @taotao 2026-03-19 3/150 2026-03-20 21:34 by JourneyLucky
[考研] A区线材料学调剂 +5 周周无极 2026-03-20 5/250 2026-03-20 21:33 by laoshidan
[考研] 0817 化学工程 299分求调剂 有科研经历 有二区文章 +22 rare12345 2026-03-18 22/1100 2026-03-20 20:39 by zhukairuo
信息提示
请填处理意见