首页 帮助中心 香港云服务器 Linux中tar存档删除和添加更新文件便捷方式
Linux中tar存档删除和添加更新文件便捷方式
时间 : 2024-08-05 15:20:44 编辑 : 华纳云 阅读量 : 185

Linux中,“tar”命令用于创建和管理存档文件非常好用。可支持多个文件和目录打包成一个存档文件,在存档中添加、删除或更新文件。常用的tar命令和选项,如存档中添加、删除和更新文件的便捷方式有哪些,华纳云在下文为大家解答?

tar存档文件中基础操作,如想要创建一个新的tar存档可以直接使用命令:

tar -cvf archive.tar file1 file2 directory/

其中,“-c”是指的创建一个新的存档。“

-v”显示详细信息。

“-f”指定存档文件名。

想查看存档内容,使用:

tar -tvf archive.tar

其中,-t:列出存档中的文件。

如果是想要解压文档:

tar -xvf archive.tar

命令中,“-x”代表是从存档中提取文件。

如果需要在tar存档中添加文件,在现有的tar存档中添加文件,可以使用“-r”选项,这种命令适用于没有被压缩过的tar存档:

tar -rvf archive.tar newfile

其中,-r指的是向存档中追加文件。下u也关注的是hi压缩过的“tar.gz”或者是“tar.bz2”是不能使用“-r”选项,压缩情况需要解压存档,添加文件然后再重新进行压缩。为了更快的完成处理压缩文件,这边可以使用另外一个工具如:--append 选项,或创建一个临时目录来展开和重建压缩存档。如:

tar -czf archive.tar.gz existingdir/

tar --append --file=archive.tar.gz newfile.txt

在压缩存档的情况下:

gzip -d archive.tar.gz  # 解压缩

tar -rvf archive.tar newfile.txt  # 添加文件

gzip archive.tar  # 重新压缩

当需要从tar存档中删除文件,使用--delete 选项(不适用于压缩文件):

tar --delete -f archive.tar file_to_remove

命令中的“--delete”是指删除存档中的文件。这个命令同样也是不能使用于压缩的tar存档,需要对压缩存档进行解压才能生效。先解压,删除文件再重新压缩:

tar --delete -f archive.tar oldfile.txt

对压缩存档:

gzip -d archive.tar.gz  # 解压缩

tar --delete -f archive.tar file_to_remove  # 删除文件

gzip archive.tar  # 重新压缩

如果是想要更新tar存档中的文件,可以使用 -u 选项:

tar -uvf archive.tar updatedfile

-u:仅更新存档中已存在的文件。如:

tar -uvf archive.tar updatedfile.txt

需要关注更新只能应用于非压缩存档。 对于压缩的存档,使用类似的流程来解压、更新并重新压缩。如:

gzip -d archive.tar.gz  # 解压缩

tar -uvf archive.tar updatedfile.txt  # 更新文件

gzip archive.tar  # 重新压缩

常用到的组合操作,如创建并立即压缩:

tar -cvzf archive.tar.gz file1 file2 directory/

-z:通过gzip压缩存档。

解压特定文件:

tar -xvf archive.tar file1

从存档中仅提取file1。

更新压缩的存档,需要先解压缩存档:

gzip -d archive.tar.gz

更新文件:

tar -uvf archive.tar updatedfile.txt

重新压缩存档:

gzip archive.tar

脚本化操作:

#!/bin/bash

 

# 解压缩

gzip -d "$1"

 

# 执行操作

tar --delete -f "${1%.gz}" "$2"

 

# 重新压缩

gzip "${1%.gz}"

 

echo "更新后的存档为 $1"

使用tar命令可以更简便完成操作,如:

./update-tar.sh archive.tar.gz file_to_remove

在Linux中,tar命令实现了便捷的方式来管理存档文件。尽管压缩存档的文件添加、删除和更新需要额外步骤,但通过脚本化操作,可以简化这些流程。使用tar可以有效地进行文件备份、传输和管理。

华纳云 推荐文章
Linux提示内存不足错误如何修复 Linux 中出现协议不可用的问题怎么办 Linux 出现符号链接层数过多错误如何处理 香港云服务器中怎么设置nginx支持http2 如何实现多服务器内容同步? Windows云主机如何监控硬件资源? centos7怎么挂载光盘?详细的步骤流程 怎么在香港云主机中部署和优化Nginx? 怎么使用Linux云服务器部署php网站? centos系统中怎么查看网络接口信息?
客服咨询
7*24小时技术支持
技术支持
渠道支持