ubuntu-基本命令篇-18-压缩包管理

简介:

18.压缩包管理

1.常用的压缩命令

.tar    tar c v f x z j。c=create,f=file,z=zip,v=visible
.gz     gzip,gunzip
.bz2    bzip2,bunzip2
.gz和.bz2类是,就是压缩率不同,.bz2压缩率高。
.zip    zip,unzip
.rar    rar a,rar x
7z    7z 
.Z    compress,uncompress
现在.gz和.Z等价。.tar能将多个文件生成一个文件,文件的尺寸不会有太大变化。这时候再用gzip再对大文件的.tar进行压缩,最后生成的文件名一般为.tar.gz,比如eclipse-SDK-3.5.2-linux-gtk.tar.gz。.tar.gz文件比.gz文件要小很多。

2.压缩包的概念

1.打包,将多个文件打包成一个文件,比如tar
2.压缩,将大尺寸的数据压缩成小尺寸的数据。比如gz
有损压缩: 压缩完后解压的文件与压缩之前的文件不一样,压缩率比较高,音频和视频到压缩一般都是使用有损压缩,比如mp3,jpeg也是有损压缩。
无损压缩: 压缩完后解压缩的文件与压缩前的一样。一般重要的文档都是使用无损压缩。保证数据的一致性。压缩率比较低,
注意:linux中没有文件后缀到说法。但是.tar,.gz 是约定成俗到

创建目录test

  1. mkdir test   

进入到test目录

  1. cd test   

拷贝/var/log/中到所有文件和文件夹到当前test目录:

  1. cp /var/log/* .  

其中 “.“就表示当前目录,“*”就表示目录下到所有文件。
查看当前目录大小

  1. du -sh   
打包所有,包括filelist和目录,即所有文件和文件夹都打包。
  1. tar cvf logbackup.tar *  
上述命令表示将当前目录的所有文件打包成一个logbackup.tar的文件。
然后 压缩文件夹 logbackup.tar ,这时候会生成logbackup.tar.gz,而原来到logbackup.tar就被替代了。

  1. gzip logbackup.tar    
我们通过 ls -l 命令可以发现
logbackup.tar 的大小是9932800,而经过gzip压缩后的logbackup.tar.gz大小是2130506,大小有明显减小。
  1. gunzip logbackup.tar.gz    

解压缩logbackup.tar.gz文件,这时候我们发现logbackup.tar.gz文件已经不再,而logbackup.tar文件有重新生成,他的大小是9932800,压缩后再解压缩得到的文件和压缩前一样大小,这是无损压缩。

ls -lh logbackup.tar ls -l logbackup.tar的不同之处在于使用
ls -lh 得到的文件信息大小是以MB为单位到,而ls -l 得到的文件信息是以字节为单位。

  1. bzip2 logbackup.tar  

使用 bzip2方式压缩文件logbackup.tar,得到logbackup.tar.bz2,它的大小是1480419,比logbackup.tar.gz文件的2130506要小,这表明bzip2的压缩率比gzip的压缩率要大

tar xvf logbackup.tar       解压缩.tar包。

tar xvfj logbackup.tar.bz2      命令会先用命令 bunzip2 logbackup.tar.bz2 加压所.gz文件到logbackup.tar,然后再使用tar xvf logbackup.tar 解包,这时候解包出来到文件会覆盖原来到文件。logbackup.tar.bz2 依然存在,但是不产生logbackup.tar。

mkdir test2 在当前目录下创建目录test2

1.将当前目录下到logbackup.tar.bz2移动到刚创建到目录test2下。
  1. mv logbackup.tar.bz2 ./test2/   
2.拷贝test2目录下到logbackup.tar.bz2的当前目录。
  1. cp /home/xuwei/test/test2/logbackup.tar.bz2 .   
3.使用bunzip2解压缩 logbackup.tar.bz2得到logbackup.tar,它到大小为9932800,和压缩前到文件大小一样,所以是无损压缩。
  1. bunzip2 logbackup.tar.bz2   
4.对logbackup.tar解包,包中到文件就被释放到当前目录下,这时候logbackup.tar包依然存在。
  1. tar xvf logbackup.tar   
5.删除当前目录下到所有文件。
  1. rm *    
6.使用zip压缩所有文件。得到到logbak.zip大小为2142442。其实zip是两步走,即打包有压缩。
  1. zip logbak.zip *   
7. 解压缩并且解包,zip也是无损压缩。
  1. unzip logbak.zip  

注意:

如果要压缩一个目录,那么可以使用如下命令:

  1. zip -r src.zip src/  
这样就将创建一个一个src目录的zip压缩包。压缩包的层次为:src.zip->src->...

如果使用命令

  1. zip -r src.zip /home/hadoop/program/hadoop-0.20.1/src/  
那么那所包的层次是:src.zip->home/hadoop/program/hadoop-0.20.1/src/...

rar a 打包 
rar x 解包
rar a logbak.rar * 打包并压缩当前目录下到所有文件并生成压缩包logbak.rar。
生成到logbak.rar的大小是1426409。
rar x logbak.rar 解压缩logbak.rar。无损压缩。

tar cvf package.tar firelist folderlist/*,*表示全部。

相关转载:http://remindme.blogbus.com/logs/25006959.html

ubuntu 解压 打包 命令全集

.tar
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是压缩!)
---------------------------------------------
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz 和 .tgz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
---------------------------------------------
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
---------------------------------------------
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩: 未知
.tar.bz
解压:tar jxvf FileName.tar.bz
压缩: 未知
---------------------------------------------
.Z
解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
---------------------------------------------
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
---------------------------------------------
.rar
解压:rar x FileName.rar
压缩:rar a FileName.rar DirName

rar请到:http://www.rarsoft.com/download.htm 下载!
解压后请将rar_static拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):
[root@www2 tmp]# cp rar_static /usr/bin/rar

---------------------------------------------
.lha
解压:lha -e FileName.lha
压缩:lha -a FileName.lha FileName

lha请到:http://www.infor.kanazawa-it.ac.jp/~ishii/lhaunix/下载!
>解压后请将lha拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):
[root@www2 tmp]# cp lha /usr/bin/

---------------------------------------------
.rpm
解包:rpm2cpio FileName.rpm | cpio -div
---------------------------------------------
.deb
解包:ar p FileName.deb data.tar.gz | tar zxf -
---------------------------------------------
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解压:sEx x FileName.*
压缩:sEx a FileName.* FileName

sEx只是调用相关程序,本身并无压缩、解压功能,请注意!
sEx请到: http://sourceforge.net/projects/sex下载!
解压后请将sEx拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):
[root@www2 tmp]# cp sEx /usr/bin/
 
解压后编译:
sudo ./configure
make
make install
 
当然,编译的时候必须要以root 用户,而解压的时候不一定,普通用户就何以。以上是常用的命令,一下是不常用的命令,在这里提下,给兄弟们一个映象,到时候能看懂就可以了。
 
方法二:
sudo ./configure --prefix=/路径
make ; make install

方法三:
sudo ./configure --enable-static-link \
--prefix=$XXX/static --with-curses &&
make &&
make install

命令解释

--enable-static-link: 这个配置命令使bash被静态链接。

--prefix=$XXX/static:这个配置命令把Bash的所有文件安装到$XXX/static目录下,这个目录在chroot环境下或在最终的XXX系统中将成为 /static 目录。(XXX为用户)

--with-curses: 将bash链接到某一个库,正如LFS系统将它指向static这一个库。

其实静态链接的bash并不一定要链接到libncurses (也可以暂时链接到静态的termcap )但在LFS中不能这样做(关于LFS的方法可访问相关网站,此问题不在这一范围内)。

每行最后的&&用处很大,它使后一个命令仅在前一个命令返回值为0(表示正确执行)的情况下才执行。在所有的命令都是拷贝 &粘贴的情况下,我们必须保证如果./configure出错,make就不执行,同样地,如果 make 出错,make install就不执行,诸如此类。

以上方法三是构建LFS(linux from scratch 从网上直接下载源代码,从头编写程序的方式)系统并编译软件的重要方法之一,事实上Linux系统包括在Unix系统中在cmd的上是共通的。





本文转自xwdreamer博客园博客,原文链接:http://www.cnblogs.com/xwdreamer/archive/2010/08/13/2297105.html,如需转载请自行联系原作者
目录
相关文章
|
6月前
|
Ubuntu
百度搜索:蓝易云【Ubuntu下cut命令的使用】
请注意,cut命令默认从标准输入中读取数据,如果不指定文件名,则需要通过管道或重定向将数据传递给cut命令。
47 5
|
6月前
|
Ubuntu 网络安全
百度搜索:蓝易云【Ubuntu命令使用方法大全】
请注意,以上仅是Ubuntu中一小部分常用命令的简要说明。要深入了解和学习Ubuntu命令,请参考Ubuntu官方文档、在线教程和书籍资源。熟练掌握常用的命令对于在Ubuntu系统中进行日常管理和开发任务至关重要。
77 3
|
6月前
|
Ubuntu 网络安全
百度搜索:蓝易云【Ubuntu命令速查】
这些是常见的Ubuntu命令的速查表。可以根据需要使用这些命令来快速执行日常管理和开发任务。
136 1
|
3月前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
896 3
|
30天前
|
缓存 Ubuntu 网络协议
ubuntu ifconfig命令找不到
通过上述指导,无论你是面临 `ifconfig`命令缺失的困惑,还是希望深入了解Ubuntu系统下的网络管理技巧,都能找到针对性的解决方案,进一步提升你的系统管理能力。
60 2
|
1月前
|
缓存 Ubuntu 网络协议
ubuntu ifconfig命令找不到
通过上述指导,无论你是面临 `ifconfig`命令缺失的困惑,还是希望深入了解Ubuntu系统下的网络管理技巧,都能找到针对性的解决方案,进一步提升你的系统管理能力。
59 1
|
1月前
|
开发框架 缓存 Ubuntu
dotnet开发框架+ubuntu防火墙命令+win11设置自动登录+阿里云短信发送限制
dotnet开发框架+ubuntu防火墙命令+win11设置自动登录+阿里云短信发送限制
39 3
|
1月前
|
缓存 Ubuntu 网络协议
ubuntu ifconfig命令找不到
综上所述,面对 `ifconfig`缺失的问题,用户应首先考虑使用替代命令或通过安装额外软件包来解决,同时注意权限管理和环境变量的正确配置。通过这些策略,可以确保在Ubuntu系统中高效、无障碍地管理网络配置。
125 0
|
3月前
|
Ubuntu Shell C++
在Ubuntu18.04上安装ros2的环境,ros2的常用命令:播放包、录制包等
在Ubuntu18.04上安装ros2的环境,ros2的常用命令:播放包、录制包等
203 1
|
4月前
|
Ubuntu Linux 文件存储
如何使用 Linux 构建自己的 NAS 系统?
【7月更文挑战第28天】
1002 6
如何使用 Linux 构建自己的 NAS 系统?
下一篇
无影云桌面