首页 > 系统相关 >【Linux笔记】tar——压缩与解压

【Linux笔记】tar——压缩与解压

时间:2023-10-05 17:00:45浏览次数:41  
标签:解压 文件 tar 压缩 gz Linux 打包

# 【Linux笔记】tar——压缩与解压

打包与压缩

打包文件(生成新的tar文件):

tar -cf newTar.tar file.txt

打包并压缩文件(生成新的.tar.gz文件):

tar -zcf newTar.tar.gz file.txt  

:打包和压缩是不一样的概念

  • gzip这种压缩方式默认只能压缩一个文件,所以当有多个文件需要压缩时,就需要用到把多个文件打包成一个文件,这就是tar -cf打包的作用。打包操作并不涉及压缩。
  • 而tar -zcf实际是两个步骤的结合:
    1. 先把多个文件打包成一个.tar文件;
    2. 对生成的.tar文件进行压缩;

注:

  1. 在敲命令时,生成的文件要手动加后缀名。
  2. -z表示用gzip压缩算法进行压缩

拆包与解压:

拆包(打包的逆过程).tar文件:

tar -xf myTar.tar # 默认拆包到当前目录下

解压.tar.gz文件:

tar -zxf myGZ.tar.gz # 同样默认解压到当前目录下

解压到指定路径(使用-C选项):

tar -zxf myGZ.tar.gz -C /home/user/文档/

(假设指定路径为/home/user/文档/)

打印压缩包文件:

打印压缩包中文件列表到终端:

tar -tf myGZ.tar.gz

追加:

在(原本已经存在的).tar文件中添加新文件:

tar -rf myTar.tar myNewFile.txt

在.tar.gz文件中添加新文件:

(tar命令不支持这种操作)
会出现报错—— tar:无法更新压缩归档文件
想要实现该功能只能先解压再压缩回去了。


最后: 再以上指令中加-v,会在终端输出tar的工作信息,例如:

tar -zxvf myGZ.tar.gz # v加在f前面即可

这样终端就会在压缩时打印压缩的文件名


更多高级用法可以参考大佬文章: # linux压缩打包命令—tar命令

标签:解压,文件,tar,压缩,gz,Linux,打包
From: https://www.cnblogs.com/code-pigeon/p/17743552.html

相关文章

  • Unix/Linux系统编程第七八章
    第七章文件操作7.1文件操作级别文件操作分为五个级别(1)硬件级别:fdisk:将硬盘、U盘或SDC盘分区。mkfs:格式化磁盘分区,为系统做好准备。fsck:检查和维修系统。碎片整理:压缩文件系统中的文件。(2)操作系统内核中的文件系统函数:每个操作系统内核均可为基本文件操作提......
  • linux服务器关闭ipv6
    现在ipv6越来越普及,但仍然有很多网站不支持,有时候服务器开启了ipv6,默认会通过ipv6的出口请求访问,可能会造成访问慢,api接口ip受限等问题,所以有时候反而需要关闭ipv6,ssh登陆到服务器,复制以下命令回车执行即可关闭。wget -O disable_ipv6.sh http://downinfo.myhostadmin.net/vps......
  • 多IP应用云主机切换出口IP地址[Linux系统教程]
    1.查看外网网卡设备和网关执行命令: iprouteshow2.更换出口ip为 211.149.140.130执行命令:iproutechangedefaultvia 211.149.140.1 dev eth0 src 211.149.140.1303.查看结果执行命令: iprouteshow......
  • NOI Linux 使用
    转载自这里一、Linux的基本操作(命令行)打开命令行在NoiLinux中可以使用快捷键Ctrl+Alt+T打开命令行终端Linux的目录Linux是没有Windows下硬盘分区的概念的,所有设备均会被挂载到一个统一的文件系统,Linux下的目录有两种:绝对目录:相对于文件系统的根目录/......
  • linux 进程切换和线程切换
    进程切换分两步:1.切换页目录以使用新的地址空间2.切换内核栈和硬件上下文对于linux来说,线程和进程的最大区别就在于地址空间,对于线程切换,第1步是不需要做的,第2是进程和线程切换都要做的。切换的性能消耗:1、线程上下文切换和进程上下问切换一个最主要的区别是线程的切换虚拟内......
  • [学习笔记] Tarjan 连通性全家桶
    拜谢陈老师的PPT!!!无向图割点若点\(x\)不为搜索树的根节点,则\(x\)是割点当且仅当搜索树上存在一个\(x\)的子节点\(y\)满足:\(dfn_x\lelow_y\)。特别地,当\(x\)是搜索树的根节点时,则\(x\)是割点当且仅当有两个点\(y_1,y_2\)满足上述条件。割边边\((x,y)\)是......
  • cmake之link_libraries 和 target_link_libraries区别
    在cmake语法中,link_libraries和target_link_libraries是很重要的两个链接库的方式,虽然写法上很相似,但是功能上有很大区别:link_libraries用来链接静态库,target_link_libraries用来链接导入库,即按照头文件+.lib(动态库导入库)+.dll(动态库)方式隐式调用动态库的.lib导入......
  • Linux命令
    1.文件相关lsll显示目录中文件及其属性信息mkdirname:创建目录cp源文件名目标文件名:复制mv源文件名目标文件名:移动文件unzipname.zip:解压2.文件查看tail[参数]文件名:查看文件尾部内容参数:-f持续显示文件尾部最新内容-n设置显示文件尾部的行数vi......
  • Spring Boot Starter Parent
    在这,您将学习了解SpringBootStarterParent,它是SpringBoot提供的父级Pom文件,旨在提供自动版本依赖管理,帮助我们轻松快速地进行 SpringBoot 开发。什么是SpringBootStarterParent?通过SpringBootStarterParent,我们可以进行简单便捷地包依赖管理。在Spr......
  • linux 执行脚本报错 No such file or directory (转)
    windows下编辑的脚本,拿到linux上面执行windows下的换行符为\r\n ,叫做CRLF      linux下的换行符为\n,叫做LF需要进行转换 解决办法:用vim打开该sh文件,输入::setff 回车,显示fileformat=dos,重新设置下文件格式::setff=unix 保存退出 转自: https://www......