Linux基础命令-echo输出信息_Linux学习中的博客-CSDN博客

Linux三剑客-grep命令_Linux学习中的博客-CSDN博客

Linux文件管理命令(3)-mv改动文件_Linux学习中的博客-CSDN博客

文章目录

前言

一、tar命令介绍

二、命令语法及常用参数

三、 参考案例

总结

前言

在工作上,有同事需要用到程序或一堆文件时,则需要先将文件打包后压缩一定比例后再传输到对方的电脑上,能节省硬盘的资源并且加快文件的传输速率;linux中有命令可以支持打包和压缩,一起看看吧。

一、tar命令介绍

tar命令的功能是用于打包、压缩和解压文件的,通过一些参数可以创建Linux系统中常见的格式,例:.tar、.tar.gz、.tar.bz2、.tar.xz等;对于RHEL7、CentOS7版本以后的系统,解压时可以不加压缩格式参数(如z,j,J),系统能补充对应格式的参数进行解压。

打包和压缩的概念:

1、打包是指将一大堆文件或者目录合成一个总的文件;

2、压缩则是将一个大的文件通过一些压缩算法变成一个小文件;

二、命令语法及常用参数

1)先用--help查看语法格式,由于这个命令的参数太多了,就不放出来了。

语法:tar 【选项】文件

[root@localhost ~]# tar --help
用法: tar [选项...] [FILE]...

2)常用参数

-c create创建文件
-C <目录> 指定解压位置
-x 提取解压文件
-t 列出压缩包中包含哪些文件,查看包中的内容
-z gzip格式压缩或解压
-Z 支持compress解压文件
-f<备份文件> 指定打包压缩的备份文件
-v 显示指令执行过程
-r 添加文件到已经压缩的文件
-u 添加改变了和现有的文件到已经存在的压缩文件
-j 支持bz2格式压缩或解压
-v 显示执行过程
-J 支持xz格式压缩或解压
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-w 确认压缩文件的正确性
-p 保留原来的文件权限与属性
-P 使用文件名的绝对路径,不移除文件名称前的“/”号

三、 参考案例

tar命令比较特殊,如果打包、压缩、解压参数上加不加" - "都是正确格式。

1)打包目录文件  v表示执行过程,当然如果为了方便,也可以不加;

[root@localhost ~]# mkdir data
[root@localhost ~]# touch data/{a..d}.txt
[root@localhost ~]# tar cvf data.tar data/
data/
data/a.txt
data/b.txt
data/c.txt
data/d.txt
[root@localhost ~]# tar cf data1.tar data
[root@localhost ~]# file data.tar
data.tar: POSIX tar archive (GNU)

可以看到这个文件还不是一个压缩的格式,目前只是作为打包文件,如果要让其打包并压缩,可以在加上参数 z、j、J等。

2)三个格式压缩比例,这里用/etc的目录做测试;

[root@localhost ~]# tar zcvf etc.tar.gz /etc
[root@localhost ~]# du -h  etc.tar.gz
12M etc.tar.gz
[root@localhost ~]# tar jcvf etc.tar.bz2 /etc
[root@localhost ~]# du -h  etc.tar.bz2
11M etc.tar.bz2
[root@localhost ~]# tar Jcvf etc.tar.xz /etc
[root@localhost ~]# du -h  etc.tar.xz
8.4M    etc.tar.xz

压缩比例从大到小 gz>bz2>xz ,并不是说压缩的越小就越好,每个参数都有它存在的意义,即使gz的压缩比例比其他要大一些,gz依然是市面上用的次数最多的格式,因为他压缩的速度很快,效率很高。并且由于现在的磁盘容量都不会说很小,所以对于用户来说,相差的那些容量影响不大,反而压缩的速率是更加看重的。

3)解压文件 ,可以先用-t参数查看有什么文件;

[root@localhost ~]# tar -tvf data.tar.gz       #列出文件
drwxr-xr-x root/root         0 2023-02-10 17:11 data/
-rw-r--r-- root/root         0 2023-02-10 17:11 data/a.txt
-rw-r--r-- root/root         0 2023-02-10 17:11 data/b.txt
-rw-r--r-- root/root         0 2023-02-10 17:11 data/c.txt
-rw-r--r-- root/root         0 2023-02-10 17:11 data/d.txt
[root@localhost ~]# file data.tar.gz    #格式是gzip
data.tar.gz: gzip compressed data, from Unix, last modified: Fri Feb 10 17:36:55 2023
[root@localhost ~]# tar zxvf data.tar.gz   #解压
data/
data/a.txt
data/b.txt
data/c.txt
data/d.txt

4)解压文件并且将文件移动到tmp目录下,使用-C参数;

[root@localhost ~]# tar -jxvf etc.tar.bz2 -C /tmp/

5)如果说要删除当前目录下jpg的文件,可以先打包,删除原始文件的,再删除包。

tar cvf jpg.tar *.jpg --remove-files
rm -f jpg.tar

总结

系统是linux时,难免会需要用到tar命令的,有时候在某些程序的官网上下载包,上传到服务器中,则需要用tar命令解压包;有些压缩格式其实都有自己的命令,像gzip、zip、bz2、xz都是命令来的,只不过日常使用中比较少用到这些命令,更多是习惯用tar这个命令。

Linux基础命令-tar打包压缩文件相关推荐

  1. linux查找目录下含有xx的文件,linux基础命令介绍三:文件搜索及其它

    1.linux中包含大量的文件,对于文件查找,linux提供了find命令. find是一个非常有效的工具,它可以遍历目标目录甚至整个文件系统来查找某些文件或目录: find [path...] [e ...

  2. Linux 基础命令(四)—— 文件的权限和访问控制列表(ACL)

    Linux 基础命令(四)-- 文件的权限和访问控制列表(ACL)  Published On July 24, 2017 前言 查看全文 http://www.taodudu.cc/news/sho ...

  3. img解包工具_3、Linux基础命令篇、压缩打包工具

    在管理系统中,我们遇到经常会使用后缀为*.tar.gz |*.tar.bz2 等文件,他们是什么文件呢?请看下面介绍及使用方法 压缩的原理,比如一个字符串"www.baidu.com&quo ...

  4. Linux基础命令(四)文件查找和压缩、软件安装、源码包管理

    目录 一.查找和压缩 1.文件查找 2.文件打包和压缩 二.软件安装 1.RPM包管理 三.源码包管理 一.查找和压缩 1.文件查找 (1)witch:命令查找 witch ls(命令) #查找ls命 ...

  5. 工作目录切换命令、打包压缩文件命令

    pwd命令显示当前工作目录,格式:"pwd[选项]" 参数                         作用 -p                              显 ...

  6. linux系统下tar打包压缩命令的使用总结

      tar tar是在Linux中使用得非常广泛的文档打包格式.它的好处就是它只消耗非常少的CPU以及时间去打包文件,但它仅仅只是一个打包工具,并不负责压缩.下面是如何打包一个目录: # tar -c ...

  7. Linux 基础命令——比较两个文件内容的不同

    语法]: diff [参数] 文件1 文件2 [说明]: 本命令比较两个文本文件,将不同的行列出来 -b 将一串空格或TAB 转换成一个空格或TAB -e 生成一个编辑角本,作为ex 或ed 的输入可 ...

  8. Linux基础命令---get获取ftp文件

    get 使用lftp登录ftp服务器之后,可以使用get指令从服务器获取文件.   1.语法 get [-E]  [-a]  [-c] [-O base]  rfile  [-o lfile]   2 ...

  9. Linux基础命令---mget获取ftp文件

    mget 使用lftp登录mftp服务器之后,可以使用mget指令从服务器获取文件.mget指令可以使用通配符,而get指令则不可以. 1.语法       mget [-E]  [-a]  [-c] ...

最新文章

  1. 考csp所需算法_CSP vs RxJS:您所不知道的。
  2. 1 编码_TMS320F28379D之CLB解码多摩川编码器1——入手小知识(原创)
  3. tomcat进程意外退出的问题分析
  4. Android Studio:依赖异常问题解决
  5. Synchronize锁重入
  6. Extjs4.1 vtype验证
  7. 计算机应用科学计算文献,计算机应用参考文献
  8. mapreduce分组统计_如何优雅的理解MapReduce
  9. linux入门常识(三)
  10. java实现EXcel的RC地址变成常规地址
  11. 高温保护_耐高温保护膜可以用在哪一方面?
  12. 安装Wireshark时提示Npcap失败的解决办法(亲测)
  13. 原创科幻短篇《Bug》
  14. 电动自行车,电动滑板车出口欧盟CE认证怎么办理通过
  15. vue valley_12个无剧透的Stardew Valley秘诀和技巧,助您入门
  16. 企业微信爆粉方式有哪些
  17. 星际蜗牛矿难机,j1900 4核+4G内存+16Gssd硬盘,群晖6.1,SSD引导成功
  18. MySQL学习(十五):数据类型之数值型
  19. 盘古BPM工作流平台(DMN)引擎完全开源了
  20. Linux下yum安装MySQL yum安装MySQL指定版本

热门文章

  1. UVC20-亿联网络Yealink视频会议摄像机即将上市
  2. mysql数据压缩存储,压缩文本,然后存储在mysql数据库中
  3. 按位取反的概念和计算方法
  4. hdu4069 Squiggly Sudoku
  5. 100天搞定机器学习:PyYAML基础教程
  6. @赛迪顾问拍了拍我:数据标注基地全国多点开花
  7. nodejs+vue高校教室管理系统
  8. golang坑之 'godoc' 不是内部或外部命令,...
  9. C语言,一个分号引发的问题:Run-Time Check Failure #2 - Stack around the variable ‘class1‘ was corrupted.
  10. 【论文阅读笔记】Structured-light 3D surface imaging: a tutorial(结构光三维表面成像)