首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >tar 打包隐藏文件[通俗易懂]

tar 打包隐藏文件[通俗易懂]

作者头像
全栈程序员站长
发布2022-09-04 12:02:11
发布2022-09-04 12:02:11
2.9K0
举报

大家好,又见面了,我是你们的朋友全栈君。

前言:

先说一下遇到的场景:前段时间在配合做 DevOps,组内有块代码是 php 的,需要用 tar 命令打包归档上传到 nexus 库,后来发现解压出来的包居然缺失了隐藏文件(配置文件),查了一下资料解决了,这里记录一下。

1. tar 命令常规用法
代码语言:javascript
复制
-c	创建新的档案文件
-C	指定到目录。注意:该目录必须存在
-f	指定打包的文件名。在f之后要立即接打包文件名!不能再加参数!
-x	解压
-O	将文件解压到标准输出
-p	使用原文件的原来属性
-P	创建归档文件,使用绝对路径
-t	列出档案文件中的内容
-r	向压缩归档文件末尾追加文件
-u	更新原压缩包中的文件
-v	显示详细过程
-z	使用gzip压缩,一般格式为xx.tar.gz或xx. tgz
-Z	有compress
-j	使用bzip2压缩,一般格式为xxx.tar.bz2
--exclude	在压缩过程中,排除某个文件
--remove-files	在完成打包后,删除原文件夹

一定要注意大小写 归档:

代码语言:javascript
复制
tar -cvf 2020-08-03_log.tar *.log

压缩归档:

代码语言:javascript
复制
tar -czvf 2020-08-03_log.tar.gz *.log

解压缩:

代码语言:javascript
复制
tar -xvf 2020-08-03_log.tar

解压缩到指定目录:

代码语言:javascript
复制
tar -xvf 2020-08-03_log.tar -C /var/log/
2.归档隐藏文件

当前文件夹下包含隐藏文件的所有文件归档到 php_project.tar:

代码语言:javascript
复制
tar -cvf php_project.tar * .[!.]*
3.归档某文件夹下的所有文件,不包含这个文件夹

eg, 归档 log 文件夹下的所有文件 常规都是下面这么写

代码语言:javascript
复制
tar -cvf log.tar /var/log/*

但是归档以后再解开,会发现是一个三级目录:var/log/* 前面两个目录是不需要的,怎么整? 方法一,cd 进去归档

代码语言:javascript
复制
cd /var/test;
tar -cvf /home/log.tar *

方法二

代码语言:javascript
复制
tar -cvf log.tar -C /var/log/ .

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/138319.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月3,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言:
  • 1. tar 命令常规用法
  • 2.归档隐藏文件
    • 3.归档某文件夹下的所有文件,不包含这个文件夹
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档