首页 > 系统相关 >Linux常用命令之tar命令详解

Linux常用命令之tar命令详解

时间:2024-11-19 14:17:47浏览次数:3  
标签:file1 tar -- 常用命令 gz Linux 归档文件 archive

tar 命令详解

tar(Tape Archive)是 Unix 和 Linux 系统中一个非常强大的文件归档工具,用于创建、提取和管理归档文件。归档文件可以包含一个或多个文件和目录,常用于备份、存档和传输数据。tar 支持多种压缩方式,如 gzipbzip2xz

基本语法
tar [选项] [归档文件] [文件或目录...]

常用选项

  1. -c--create

    • 创建新的归档文件。
    tar -cvf archive.tar file1 file2
    
  2. -x--extract--get

    • 从归档文件中提取文件。
    tar -xvf archive.tar
    
  3. -t--list

    • 列出归档文件中的内容。
    tar -tvf archive.tar
    
  4. -f--file=ARCHIVE

    • 指定归档文件的名称。
    tar -cvf archive.tar file1 file2
    
  5. -v--verbose

    • 显示详细信息,如处理的文件名。
    tar -cvf archive.tar file1 file2
    
  6. -z--gzip--gunzip

    • 使用 gzip 压缩或解压缩归档文件。
    tar -czvf archive.tar.gz file1 file2
    
  7. -j--bzip2

    • 使用 bzip2 压缩或解压缩归档文件。
    tar -cjvf archive.tar.bz2 file1 file2
    
  8. -J--xz

    • 使用 xz 压缩或解压缩归档文件。
    tar -cJvf archive.tar.xz file1 file2
    
  9. -p--preserve-permissions--same-permissions

    • 保留文件的权限。
    tar -xvpf archive.tar
    
  10. -u--update

    • 更新归档文件中的文件,只添加或更新比归档文件中版本新的文件。
    tar -uvf archive.tar file1
    
  11. -C--directory=DIR

    • 指定解压到的目标目录。
    tar -xvf archive.tar -C /path/to/destination
    
  12. -k--keep-old-files

    • 解压时跳过已存在的文件。
    tar -xvkf archive.tar
    
  13. -P--absolute-names

    • 保留绝对路径名。
    tar -cvf archive.tar -P /path/to/file
    
  14. -a--auto-compress

    • 自动检测压缩格式(如 .gz.bz2.xz)。
    tar -caf archive.tar.gz file1 file2
    

用法示例

  1. 创建未压缩的归档文件

    tar -cvf archive.tar file1 file2
    
    • 这将创建一个名为 archive.tar 的归档文件,包含 file1file2
  2. 创建使用 gzip 压缩的归档文件

    tar -czvf archive.tar.gz file1 file2
    
    • 这将创建一个名为 archive.tar.gz 的压缩归档文件,包含 file1file2
  3. 创建使用 bzip2 压缩的归档文件

    tar -cjvf archive.tar.bz2 file1 file2
    
    • 这将创建一个名为 archive.tar.bz2 的压缩归档文件,包含 file1file2
  4. 创建使用 xz 压缩的归档文件

    tar -cJvf archive.tar.xz file1 file2
    
    • 这将创建一个名为 archive.tar.xz 的压缩归档文件,包含 file1file2
  5. 从归档文件中提取文件

    tar -xvf archive.tar
    
    • 这将从 archive.tar 中提取所有文件到当前目录。
  6. 从压缩的归档文件中提取文件

    tar -xzvf archive.tar.gz
    
    • 这将从 archive.tar.gz 中提取所有文件到当前目录。
  7. 列出归档文件中的内容

    tar -tvf archive.tar
    
    • 这将列出 archive.tar 中的所有文件及其详细信息。
  8. 更新归档文件中的文件

    tar -uvf archive.tar file1
    
    • 这将更新 archive.tar 中的 file1,如果 file1 在归档文件中不存在,则将其添加进去。
  9. 解压到指定目录

    tar -xvf archive.tar -C /path/to/destination
    
    • 这将从 archive.tar 中提取所有文件到 /path/to/destination 目录。
  10. 保留文件权限

    tar -xvpf archive.tar
    
    • 这将从 archive.tar 中提取所有文件,并保留文件的权限。
  11. 跳过已存在的文件

    tar -xvkf archive.tar
    
    • 这将从 archive.tar 中提取所有文件,但跳过已存在的文件。
  12. 保留绝对路径名

    tar -cvf archive.tar -P /path/to/file
    
    • 这将创建一个包含绝对路径名的归档文件。

实际应用示例

  1. 备份整个目录

    tar -czvf backup.tar.gz /path/to/directory
    
    • 这将创建一个名为 backup.tar.gz 的压缩归档文件,包含 /path/to/directory 目录中的所有文件和子目录。
  2. 恢复备份

    tar -xzvf backup.tar.gz -C /path/to/restore
    
    • 这将从 backup.tar.gz 中提取所有文件到 /path/to/restore 目录。
  3. 备份特定文件

    tar -czvf backup.tar.gz file1 file2
    
    • 这将创建一个名为 backup.tar.gz 的压缩归档文件,包含 file1file2
  4. 列出备份文件的内容

    tar -tvf backup.tar.gz
    
    • 这将列出 backup.tar.gz 中的所有文件及其详细信息。
  5. 排除特定文件或目录

    tar -czvf backup.tar.gz --exclude='*.log' /path/to/directory
    
    • 这将创建一个名为 backup.tar.gz 的压缩归档文件,但排除所有 .log 文件。
  6. 增量备份

    tar -g snapshot-file -czvf incremental-backup.tar.gz /path/to/directory
    
    • 这将创建一个增量备份,只备份自上次备份以来发生变化的文件。

注意事项

  1. 文件类型

    • tar 可以处理任何类型的文件和目录,包括文本文件、二进制文件、符号链接等。
  2. 符号链接

    • 默认情况下,tar 会跟随符号链接并归档链接的目标文件。使用 --no-recursion 选项可以避免递归归档符号链接。
  3. 文件权限

    • 如果你在尝试使用 tar 命令时遇到了权限问题,可以使用 sudo 提升权限。
  4. 压缩格式

    • tar 支持多种压缩格式,选择合适的压缩格式可以根据具体需求平衡压缩比和压缩速度。

总结

tar 命令是一个非常强大且灵活的文件归档工具,适用于多种场景,如文件备份、数据传输和存储优化。更高效地使用 tar 命令来管理和归档文件,可以提高系统的性能和可维护性。

标签:file1,tar,--,常用命令,gz,Linux,归档文件,archive
From: https://blog.csdn.net/weixin_56303229/article/details/143873592

相关文章

  • Linux系统怎么通过端口号查找完整进程
    需求已知某进程启动了一个端口号,怎么才能知道改进程的完整启动命令查找过程例如本机已经启动了8006端口通过端口PID可以查看到改端口启动的进程PID是6120#lsof-i:8006COMMANDPIDUSERFDTYPEDEVICESIZE/OFFNODENAMEpt_main_t6120xiaoxing93u......
  • 网络属性及相关配置常用命令-下篇
    nmclinmcliconnmclidevshowens160nmcliconmodens160+ipv4.address10.0.0.119/24#同一设备新增一条配置+ipv4.addressnmclicondownens160;nmcliconreload;nmcliconupens160ipa|grep'inet1'nmcliconmodens160-ipv4.addresses10.0.0.119/2......
  • 网络属性及相关配置常用命令-上篇
    网络属性及相关配置网卡名字rocky8|openEuleripa|egrep'mtu|scrope'cd/etc/sysconfig/network-scriptsmvifcfg-ens160ifcfg-eth0sed-i's/ens160/eth0/g'ifcfg-eth0vim/etc/default/grub #grub是启动配置文件GRUB_CMDLINE_LINUX="...net.ifnames=0......
  • 【Linux】进程的基本概念
    目录一、进程概念的推导二、描述进程(PCB)2.1task_struct2.2task_struct内容2.2.1task_struct内容分类2.2.2PID(进程ID)2.2.3PPID(父进程的进程ID)三、查看进程四、进程的创建4.1命令行直接启动进程4.2通过代码来创建进程4.2.1通过fork函数来创建进程4.2.2fork函数......
  • 适应等保的Windows系统和Linux系统安全加固V1.2.0版本
    《Web安全》http://mp.weixin.qq.com/s?__biz=MzkwNjY1Mzc0Nw==&mid=2247484238&idx=1&sn=ca66551c31e37b8d726f151265fc9211&chksm=c0e47a12f793f3049fefde6e9ebe9ec4e2c7626b8594511bd314783719c216bd9929962a71e6&scene=21#wechat_redirect《网安面试指南》http:/......
  • docker原理、常用命令,以及部署nginx、tomcat、es+kibana练习(一)
    基本结构镜像(image):docker镜像可以当作一个模板,通过这个模板可以创建多个容器。例如一个tomcat镜像=>运行=>容器(提供服务)容器(container):docker利用容器技术,可以独立运行一个或一组应用(容器间相互隔离)docker容器通过镜像来创建,即容器中的进程依赖于镜像中的文......
  • linux常用命令(解压,压缩)
    目录1. tar -归档文件常用参数示例2. gzip -压缩单个文件常用参数示例3. bzip2 -压缩单个文件常用参数示例4. zip -压缩文件和目录常用参数示例5. unzip -解压.zip文件常用参数示例1. tar -归档文件tar是一个非常强大的工具,不仅可以打包......
  • linux常用命令(文件操作)
    目录1. ls -列出目录内容2. cd -更改目录3. pwd -打印当前工作目录4. mkdir -创建目录5. rm -删除文件或目录6. cp -复制文件或目录7. mv -移动或重命名文件8. touch -更新文件访问和修改时间9. cat -显示文件内容10. grep -搜索文本......
  • linux C高级(持续更新中)
    linux介绍1.1.不同操作系统的内核:windows-NTubuntu-linuxAndroid-linuxmacOsios-unix1.2.查看系统版本查看操作系统版本lsb_release-a或者-rcat/etc/issue--->文件中查看查看内核版本uname-a或者-rcat/proc/version--->文件中查看1.3.......
  • 【Linux-进程信号】详谈信号捕捉
    详谈信号捕捉内核如何实现信号的捕捉如果信号的处理动作是用户自定义函数(调用signal函数自定义处理函数),在信号递达时就调用这个函数,这称为信号捕捉。由于信号处理函数的代码是在用户空间的,处理过程比较复杂典型的操作系统中信号处理的机制1.进入内核态:当程序因为中断、异......