- 浏览: 346272 次
文章分类
最新评论
-
亚当爱上java:
"给pre-commit添加可执行权限:chmod ...
svn强制要求提交注释--pre-commit钩子 -
rosasyou:
不知道这篇文章是怎么才让人看的?估计不是浏览器兼容问题。 ,与 ...
Zend Framework的DB处理 -
jinjiankang:
$youngest=`svnlook youngest $sv ...
svn备份策略 -
wangxc:
你好,我按照你介绍的方法在创建完weekly_backup.p ...
svn备份策略 -
yangfuchao418:
...
关于memcached的浅见
对许多用户来说,在DOS和Windows环境下利用工具软件WinZip、ARJ等压缩或解压文件是比较容易的事。但是,在Linux中如何对文件进行压缩与解压呢?
用tar建立存档
tar是“tape archive”(磁带存档)的简称,它出现在还没有软盘驱动器、硬盘和光盘驱动器的计算机早期阶段。那时软件的发行和备份都需要大卷的磁带,计算机上运行的头几个程序中就得有一个是磁带的阅读程序。随着时间的推移, tar命令逐渐变为一个将很多文件进行存档的工具,目前许多用于Linux操作系统的程序就是打包为tar档案文件的形式。
tar 命令的格式是:
tar [option] <file>;
tar命令有很多参数,利用f选项、设备或文件的名字可以指示tar命令将档案置于特定的设备或文件中。当为tar的档案创建一个文件时,这个文件名的扩展通常是如果指定了一个目录名,那么它所有的子目录都会被包含在档案之中。
利用tar命令和f选项的格式如下所示:
#tar opionsf archive-name.tar directory-and-filenames
要创建一个档案应使用c选项,与f选项一起,c选项会在设备或文件中创建档案,应在f选项的左边输入这一选项。在下例中,目录mydir和它所有的子目录都被存入文件myarch.tar中。
#tar cf myarch.tar mydir
如果想要改动已经存档的目录中的文件,可以使用u选项使tar更新档案中的文件。tar比较每一个档案文件与相应用户目录中文件最近一次修改的时间,然后将上一次存档之后又被修改过的文件拷贝到档案文件中去。在用户目录中新创建的文件也会被添加到档案文件中。在下面的例子中,用户用mydir目录中最近被修改或添加的文件来对myarch.tar文件进行更新。
#tar uf myarch.tar mydir
如果想查看在一个档案中存储着哪些文件,可以使用tar命令和t选项。下面命令列出所有存储在myarch.tar档案中的文件:
#tar tf myarch.tar
要将文件备份到一个特定的设备,只须把设备名作为档案。在下面的例子中,用户在/dev/fdo设备的软盘中创建了一个档案,并将mydir目录中所有的文件都拷贝到档案中。
#tar cf/dev/fdo mydir
要恢复设备磁盘中的文件,可使用xf选项:
#tar xf/dev/fdo
如果所备份的文件大小超过设备可用的存储器,比如软盘,此时就可以创建一个使用多个标号的tar档案。当使用m选项向一个软驱进行存档时,tar命令在一张软盘已满的时候会提醒再放入一张新的软盘。
#tar cmf/dev/fdo mydir
要想恢复几张盘中的档案,只要将第一张软盘放入软驱,然后输入有x和m选项的tar命令。必要时会被提醒放入另外一张软盘。
#tar xmf/dev/fdo
tar操作不会对档案文件实行压缩操作。如果想压缩档案文件,可以指示tar激活gzip实用工具,在存档之前对文件进行压缩。利用z选项,tar在对文件存档之前首先要使用gzip来压缩文件。当恢复文件时,同样的Z选项将激活gzip对文件解压。
#tar czf myarch.tar mydir
值得注意的是,压缩档案中的单个文件和整体压缩档案是不同的。通常档案文件是为了便于传输而把几个文件组合成为一个tar文件。为了缩短传输时间,档案应当越小越好,可以将其压缩然后传送压缩后的版本。接收者可以对之解压缩,然后恢复tar文件。在tar文件上使用gzip将会产生有.tar.gz扩展名的文件。扩展名.gz被加到被压缩的gzip文件名之后。
下面的例子创建了myarch.tar的一个压缩的版本,它具有了.gz的扩展名。
#gzip myarch.tar
#ls
#myarch.tar.gz
tar命令虽然有非常多的参数,但是使用起来并不困难,可以快速而又简单地为任何需要的子目录生成档案文件。
首先,我们来建立一个有三个文件的子目录,再建立一个有另外三个文件的子目录,如下所示:
# mkdir mydir
#cd mydir
# touch file1 file2 file3
# mkdir mydir2
#cd mydir2
# touch file21 file22 file23
#cd../..
#tree mydir
mydir
file1
file2
file3
mydir2
file21
file22
file23
现在已经有了一个子目录和其中的文件,使用这个命令的c(生成)和f(文件)参数来生成一个tar档案文件:
# tar cf mydir.tar mydir
# ls -l *.tar
- r w - r - - r - - 1 bball u s e r s 10240 Jan 5 15 : 01 mydir. t a r
请注意,原来的子目录并没有发生变化。在缺省的情况下,tar命令不会删除原来的子目录和文件。如果想看看命令执行的过程,可以使用v参数,如下所示:
# tar cvf mydir.tar mydir
mydir/
mydir/file1
mydir/file2
mydir/file3
mydir/mydir2/
mydir/mydir2/file21
mydir/mydir2/file22
mydir/mydir2/file23
tar命令在进行操作的时候,就会把正在添加到档案文件中去的子目录和文件的文件名显示出来。使用w参数,即交互参数,这样tar命令在执行的过程当中会询问是否想加入每个文件。当想有选择地备份内容不多的子目录的时候,这样就非常地方便,如下所示:
# tar cwf mydir.tar mydir
add mydir?y
add mydir/file1?n
add mydir/file2?y
add mydir/file3?n
add mydir/mydir2?y
add mydir/mydir2/file21?y
add mydir/mydir2/file22?n
add mydir/mydir2/file23?y
在上面的例子中,没有把文件file1、file3和文件file22归档。可以使用tar命令的t参数列出档案文件中的内容,f参数定义操作所使用的tar档案文件,如下所示:
# tar tf mydir.tar
mydir/
mydir/file2
mydir/mydir2/
mydir/mydir2/file21
mydir/mydir2/file23
需要注意的是,如果参数的顺序放错了,tar命令会显示出错信息并退出。
下面就来看看如何来释放整个的档案文件或者其中的某一个文件。如果想释放其中所有的文件,可以同时使用-x释放参数和-f。为了了解命令执行的过程,还可以加上-v参数:
# tar xvf mydir.tar
mydir/
mydir/file2
mydir/mydir2/
mydir/mydir2/file21
mydir/mydir2/file23
如果只是想从档案文件中释放几个文件的话,可以再次使用w参数:
# tar xvwf mydir.tar
extract mydir/?y
mydir
extract mydir/file2?y
mydir/file2
extract mydir/mydir2/?y
mydir/mydir2/
extract mydir/mydir2/file21?y
mydir/mydir2/file21
extract mydir/mydir2/file23?y
mydir/mydir2/file23
上例表明查看了档案文件,并交互地释放了文件。如果只想从档案文件中释放某一个文件,可以在命令行中指定这个文件。作为示例,我先删除了原始的mydir子目录,然后使用一个空的子目录进行如下操作:
# tar xf mydir.tar mydir/mydir2/file23
# tree mydir
m y d i r
- - mydir2
- - file23
1 directory, 1 file
注意,正如所看到的只有一个文件被释放出来。虽然tar命令不会覆盖整个的子目录,但是它会覆盖掉那些有着相同文件名的文件。
值得一提的是,还可以使用其它程序,如BRU-2000或者taper脚本程序来备份系统或者选定的文件和子目录。OpenLinux操作系统也可以通过cron日程安排来自动进行文件的归档整理工作。
建立cpio档案文件
cpio命令可以从tar或者cpio档案文件中拷入或者拷出文件。因为cpio命令和tar命令兼容,所以我这里不再详细介绍它如何工作。但是这个命令具备一些tar命令没有的功能,如下所示:
◆ 支持cpio和tar两种档案文件格式;
◆ 支持许多老式磁带数据格式;
◆ 能够通过一个管道读取文件的文件名。
只有很少的Linux软件包是以cpio格式发行的。如果对cpio命令的详细情况感兴趣的话,可以阅读它的使用手册。
使用gzip压缩文件
gzip命令是用来压缩文件的。它不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。
gzip命令的格式是:
gzip [option] [file]
gzip很容易使用。如果想压缩某个文件或者磁带档案文件,可输入下面的内容:
# gzip mydir.tar
在缺省的状态下,gzip会压缩文件、再加上一个.gz扩展名,然后删除掉原来的文件。如果想解压缩文件,可以使用gzip的对应程序命令gunzip或者gzip命令的-d解压缩参数。但是必须保证这个用于解压缩的文件有.gz(或者.Z、-gz、.z、-z、或者_z)扩展名,否则gzip命令和gunzip命令都会显示出错信息。如果想使用自己的扩展名,可以使用-S后缀参数,如下所示:
# gzip -S .gzipped mydir.tar
gzip还可以处理用zip命令、compress命令和pack命令压缩的文件包。如果想在压缩或者解压缩的过程中看到更多的信息,可以使用-l列清单参数看到文件在被压缩或解压缩的时候的文件长度。在前一个例子中,压缩完子目录mydir之后,可以使用gzip命令按照下面的方法得到有关的数据:
# gzip -l mydir.tar.gz
compressed uncompr.ratio uncompressed_name
312 21330 98.2% mydir.tar
此外,gzip还有一个很有用的参数-t,可以用来测试压缩文件的完整性。如果文件正常,gzip不会给出任何显示。如果想看到OK这两个字母,可以在测试某个文件时使用-tv参数。
使用compress压缩文件
compress命令就像它的文件名那样是用来压缩文件的。这是Unix中出现得比较早的一个压缩程序,它通过使用自适应的Lemple-Ziv编码来缩小所指文件的大小。每一个文件将被一个带有.Z扩展名的压缩文件所代替,但文件的属主关系、访问时间和修改时间将保持不变。如果没有指点文件,则接受标准输入的文件进行压缩并送到标准输出。
compress命令格式是:
compress [option] [file]
与compress对应的有一个解压缩命令uncompress,其格式如下:
uncompress [option] [file]
它使“.Z”的压缩文件恢复。
compress和uncompress命令的选项如下:
◆-c 写到标准输出,不改变文件。
◆-f 强制压缩,即使文件并不真正减小或.Z文件已经存在,也进行压缩。
◆-v 显示每一个被压缩文件的缩小的百分比。
下面举例说明compress命令的用法:
#compress file
上面代码表明将生成压缩文件file.Z代替file,要解压缩输入:
#uncompress file.Z
注意,像使用gzip命令一样,使用uncompress命令时必须给出一个带有.Z扩展名的文件名,否则uncompress命令显示出错信息。
发表评论
-
IO系统性能之二:缓存和RAID如何提高磁盘IO性能
2010-10-18 10:23 3488高速缓存(Cache) RAID(Redundant A ... -
vim操作
2010-08-01 22:55 1072s -
Linux环境进程间通信(一)
2010-07-03 22:49 954http://www.ibm.com/developerwor ... -
深刻理解Linux进程间通信(IPC)
2010-07-03 11:51 1633www.ibm.com/developerworks/cn ... -
APACHE中虚拟目录和虚拟主机设置
2009-02-02 14:41 2969在apache的配置文件http.conf中设置如下信息, ... -
LINUX新手要了解的十个知识点
2009-02-02 14:40 950Linux新手要了解的十个 ... -
LINUX下如何安装、卸载软件
2009-02-02 14:39 1395在Linux下有一个功能强大的软件安装卸载工具,名为RPM ... -
LINUX:常用命令
2009-02-02 14:38 1211一: Linux下的mysql数据库常用操作 1.登入登 ... -
LINUX下SVN命令大全
2009-02-02 14:35 64421、将文件checkout到本地目录 svn check ... -
linux下crontab的使用
2008-11-14 13:31 6714crontab- - 1.作用 使用crontab命令可以修 ... -
Linux小技巧收集
2008-07-10 11:07 1856前言:因为用Linux的时 ... -
Linux下perl文件的执行
2008-07-04 14:04 3142#! /usr/bin/perl 第一个“#”表 ... -
Linux crontab-自动化的任务
2008-07-04 00:51 1680http://www.eygle.com/digest/200 ... -
linux ip设置
2008-07-04 00:09 1575示例环境: CODE:OS: FC2 NIC: eth0 h ... -
Linux应用问答(三)
2008-07-03 14:24 1044问:安装完Linux后,根目录下有很多子目录,其意义如何? ... -
Fedora下开启telnet服务
2008-06-12 23:37 76451。基础知识 linux提供服务是由运行在后台的守护程序(da ...
相关推荐
9. **`.rar` 文件**:RAR是一种专有的压缩格式,通常在Windows环境下使用。在Linux下,你需要安装`unrar`工具来解压,如`unrar e file.rar`。 10. **`.zip` 文件**:ZIP是跨平台的压缩格式,在Linux下可以使用`...
例如,使用 `tar -zcf log.tar.gz *.log` 命令可以将当前目录下的所有 log 文件打包成一个压缩文件 log.tar.gz。 tar 命令使用示例 下面是一个使用 tar 命令的示例: 1. 首先,使用 `tar -cf log.tar *.log` 命令...
Linux 系统中使用 tar 命令压缩和解压文件的教程 在 Linux 系统中,tar 命令是一个非常重要的命令,主要用于压缩和解压文件。tar 命令可以将多个文件压缩成一个文件,使得文件传输和存储更加方便。下面是使用 tar ...
本文旨在通过实际案例对比分析`tar`和`zip`这两种压缩工具在Linux环境下压缩文件的效果,包括压缩后的文件大小变化以及对磁盘空间的节约程度,从而帮助用户更好地根据实际情况选择合适的压缩工具。 #### 实验准备 -...
本文将深入探讨Linux下不同格式的tar压缩文件及其对应的解压命令,帮助用户更高效地管理文件。 ### 1. *.tar 文件解压 tar是一种常见的用于打包文件的工具,在Linux中广泛使用。当文件被压缩成.tar格式时,可以...
`tar` 命令是Linux中最常用的打包工具之一,它能创建.tar文件,并且可以与其他压缩工具结合使用来创建压缩文件。 - **解压**: - `tar xvf FileName.tar`:用于解压.tar文件。 - `tar jxvf FileName.tar.bz2`:...
`znew`主要用于更新旧的`.Z`格式压缩文件,但它并不是所有Linux发行版的默认命令,部分系统可能需要`uncompress`替代。 `tar`命令则用于创建、管理和提取档案文件,它并不直接进行压缩,但常与其他压缩工具结合使用...
Linux打包命令_tar Linux 系统中的打包命令 tar,是一种功能强大的文件存档工具,能够对单个文件、多个文件、单个目录、多个目录进行压缩打包。tar 命令可以实现文件的压缩、解压缩、查看、创建等多种操作。 tar ...
tar命令 解包:tar zxvf FileName.tar 打包:tar czvf FileName.tar DirName gz命令 解压1:gunzip FileName.gz 解压2:gzip -d FileName.gz 压缩:gzip FileName .tar.gz 和 .tgz 解压:tar zxvf FileName.tar.gz ...
### Linux系统下的文件压缩与解压命令大全 在Linux系统中,文件的压缩与...通过上述命令和选项的组合使用,可以在Linux系统中高效地完成文件的压缩和解压任务。掌握这些命令对于日常的工作和学习都是非常有帮助的。
本文档主要介绍了 Linux 系统中常用的文件压缩和解压缩命令,包括 tar、rar 等命令的使用方法和选项。 一、tar 命令 tar 命令是 Linux 系统中最常用的文件压缩和解压缩命令。它可以用来创建归档文件、解压缩文件、...
Tar 命令是 Linux 系统中的一种压缩和解压缩工具,它可以将文件和目录压缩成一个单一的文件,也可以将压缩文件解压缩成原来的文件和目录。Tar 命令的使用方法非常灵活,下面将详细介绍 tar 命令的使用方法和参数。 ...
本文详细介绍了 Linux 下 `tar` 命令及其与其他压缩工具的结合使用方法,同时还列举了一些常见压缩文件格式的处理方式。通过本文的学习,读者可以掌握如何在 Linux 系统中有效地管理和压缩文件。
Linux操作系统中,tar命令是一种非常重要的文件管理工具,它可以用来打包和压缩文件。tar命令历史悠久,最初由Unix系统中移植到Linux系统上。该命令的全称是tape archive,即磁带归档工具。除了打包和压缩,tar还...
gzip 命令用于压缩和解压缩文件。gzip 命令的基本语法为:gzip [选项] 文件名。 常用的 gzip 命令选项包括: * -c:将输出写到标准输出上,并保留原有文件。 * -d:将压缩文件解压。 * -l:显示压缩文件的详细信息...
这条命令会将当前文件夹下的所有文件及子文件夹打包并使用 gzip 进行压缩,生成一个名为 `all.tar.gz` 的压缩文件。 - **解压文件至当前文件夹**: ``` # tar -xzf all.tar.gz ``` 这条命令会将 `all.tar.gz`...
Linux下的压缩解压缩命令--非常全,下载不吃亏。很详细很具体。 要了一个积分,主要是攒起来下载别人文档用。
在 Linux 系统中,我们通常使用的文件压缩命令有:bunzip2、bzip2、cpio、gunzip、gzip、split(切割文件)、zgrep(在压缩文件中寻找匹配的正则表达式)、zip、unzip、tar 和 rar。其中,tar 和 rar 是我们今天要...
tar 文件是 Linux 中最常见的压缩文件格式。tar 文件可以使用 tar 命令来解压和压缩。 * 解压:tar xvf FileName.tar * 压缩:tar cvf FileName.tar DirName .tar.gz 文件 ------------- .tar.gz 文件是 tar 文件...
本文将详细介绍Linux下常用的几种压缩格式及其对应的压缩与解压缩命令。 #### 1. gzip压缩格式 - **解压缩命令**: 1. `gunzip FileName.gz`:该命令用于解压缩以`.gz`为扩展名的文件。 2. `gzip -d FileName.gz`...