首页 > 编程知识 正文

tar命令压缩文件,Linux解压命令

时间:2023-05-03 21:34:53 阅读:50656 作者:566

在Linux上,压缩和解压缩包命令中使用最多的tar命令。 tar命令是在Unix/Linux系统上备份文件的可靠方法,几乎可在任何环境中运行,并且可供所有用户使用。 使用tar的参数必须区分大小写,参数写错的结果差异很大。

0x01 tar语法必须注意tar -[参数] [路径] #命令的“空间”和“-”。

0x02 tar参数--a或--catenate #将文件添加到现有备份文件中。

-b或--blocking-factor=#设置每个记录的块数。 每个块大小为12字节。

-B或- -读取完整记录#读取数据时重置块大小。

-c或- -创建#创建新的备份文件。

-C或- -目录=#切换到指定目录。

-d或--diff或--compare #比较备份文件中的文件和文件系统上的文件之间的差异。

-f或--file=#指定备份文件。

-F

-g或- -列出的增量#处理GNU格式的大量备份。

-G或- -增量#处理旧GNU格式的大量备份。

-h或--dereference #直接复制该连接指向的原始文件,而不建立符号连接。

-i或--ignore-zeros #将忽略备份文件的0字节块,即EOF。

解压缩-k或--keep-old-files #备份文件时,不复盖现有文件。

-K文件或--starting-file=文件#从指定文件恢复。

-l或--one-file-system #复制的文件或目录中存储的文件系统必须与执行tar命令的文件系统相同,才能被复制。

将-L介质容量或-tape-length=每个介质容量#的容量设置为1024字节。

使用-m或--modification-time #恢复文件时,不会更改文件的更改时间。

-M或- -多卷#在创建、恢复备份文件或列出其内容时使用多卷帐簿模式。

-N日期格式或--newer=日期和时间#仅将比指定日期新的文件保存到备份文件。

-o或--old-archive或--portability #在将数据写入备份文件时使用V7格式。

将从-O或--stdout #备份文件中恢复的文件输出到标准输出设备。

-p或--same-permissions #使用原始文件权限恢复文件。

-P或--absolute-names #文件名使用绝对名称,不删除文件名前面的'/'号。

-r或--append #将文件添加到现有备份文件的末尾。

-R或- -列出--block-number #备份文件中每个信息的块号。

-s或--same-order #恢复文件的顺序与备份文件中的保存顺序相同。

如果-S或--sparse #文件包含大量连续的0字节,请将该文件另存为稀疏文件。

-t或- -列出--list #备份文件的内容。

-T模板文档或--files-from=模板文档#指定包含一个或多个模板样式的模板文档,使tar能够解压缩或创建符合配置条件的文档。

-u或--update #仅替换比备份文件中的文件更新的文件。

解压缩-U或--unlink-first #压缩文件并恢复文件之前,断开文件连接。

显示-v或--verbose #命令执行进程。

使用-V卷名称或--label=卷名称#指定的卷名称创建备份文件。

如果-w或--interactive #出现问题,请首先询问用户。

将-W或--verify #写入备份文件后,验证文件是否正确。

-x或--extract或--get #从备份文件中恢复文件。

-X模板文档或--exclude-from=模板文档#指定包含一个或多个模板样式的模板文档,以排除ar满足配置条件的文档。

-z或--gzip或--ungzip #使用gzip命令处理备份文件。

-Z或--compress或--uncompress #使用compress命令处理备份文件。

-设备编号存储密度#设置备份用外围设备编号和存储数据的密度。

--after-date=日期和时间#指定此参数的效果'

-N"参数相同。

--atime-preserve # 不变更文件的存取时间。

--backup=<备份方式>或--backup # 移除文件前先进行备份。

--checkpoint # 读取备份文件时列出目录名称。

--concatenate # 此参数的效果和指定"-A"参数相同。

--confirmation # 此参数的效果和指定"-w"参数相同。

--delete # 从备份文件中删除指定的文件。

--exclude=<范本样式> # 排除符合范本样式的文件。

--group=<群组名称> # 把加入设备文件中的文件的所属群组设成指定的群组。

--help # 在线帮助。

--ignore-failed-read # 忽略数据读取错误,不中断程序的执行。

--new-volume-script=

--newer-mtime # 只保存更改过的文件。

--no-recursion # 不做递归处理,也就是指定目录下的所有文件及子目录不予处理。

--null # 从null设备读取文件名称。

--numeric-owner # 以用户识别码及群组识别码取代用户名称和群组名称。

--owner=<用户名称> # 把加入备份文件中的文件的拥有者设成指定的用户。

--posix # 将数据写入备份文件时使用POSIX格式。

--preserve # 此参数的效果和指定"-ps"参数相同。

--preserve-order # 此参数的效果和指定"-A"参数相同。

--preserve-permissions # 此参数的效果和指定"-p"参数相同。

--record-size=<区块数目> # 此参数的效果和指定"-b"参数相同。

--recursive-unlink # 解开压缩文件还原目录之前,先解除整个目录下所有文件的连接。

--remove-files # 文件加入备份文件后,就将其删除。

--rsh-command=<执行指令> # 设置要在远端主机上执行的指令,以取代rsh指令。

--same-owner # 尝试以相同的文件拥有者还原文件。

--suffix=<备份字尾字符串> # 移除文件前先行备份。

--totals # 备份文件建立后,列出文件大小。

--use-compress-program=<执行指令> # 通过指定的指令处理备份文件。

--version # 显示版本信息。

--volno-file=<编号文件> # 使用指定文件内的编号取代预设的卷册编号。

0x03 常用命令详解「整个目录压缩」

tar -zxvf /home/迅速的飞机/web.tar.gz -C /home/迅速的飞机/test

# 将web.tar.gz解压到指定目录test;

tar -cvf /home/迅速的飞机/web.tar /root/web

# 将root/web目录打包为tar格式不压缩,存放在/home/迅速的飞机/

tar -zcvf /home/迅速的飞机/web.tar.gz /root/web

# 将root/web目录打包为tar.gz格式压缩,存放在/home/迅速的飞机/

tar -jcvf /home/迅速的飞机/web.tar.bz2 /root/web

# 将root/web目录打包为tar.bz2格式压缩,存放在/home/迅速的飞机/

「查看压缩包内文件」

tar -ztvf /home/迅速的飞机/web.tar.gz

# 查看web.tar.gz压缩包内文件,使用的gzip格式所以参数需要加入「z」

「解压到当前目录」

tar -zxvf /home/迅速的飞机/web.tar.gz

# 将web.tar.gz解压到当前目录;

「解压压缩包内指定文件到当前目录」

tar -zxvf /home/迅速的飞机/web.tar.gz home/迅速的飞机/test/index.php

# 解压web.tar.gz压缩包内test目录内的index.php,此命令会解压完整路径到当前目录;

「压缩目录保留权限」

tar -zxvpf /home/迅速的飞机/web.tar.gz /root/web

# 将root/web目录压缩后存放在/home/迅速的飞机目录并保留root/web目录所有文件权限

「压缩大于某个日期的文件」

tar -N '2020/01/01' -zcvf /home/迅速的飞机/web.tar.gz /root/web

# 压缩root/web目录内文件创建时间大于2020/01/01的文件;

「压缩目录排除指定目录」

tar --exclude /root/web -zcvf /home/迅速的飞机/test.tar.gz /root/*

# 压缩root目录下所有目录文件排除web目录;存放在home/root/迅速的飞机目录下命名为test.tar.gz;

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。