linux环境文件或者文件夹打包

2023-11-17

1、linux zip压缩

压缩当前文件夹下所有文件,压缩为a.zip。命令行的方法是怎样。

常用格式:
zip -r fileName.zip 文件夹名

 (1)把/home目录下面的data目录压缩为data.zip

zip -r data.zip data #压缩data目录

 (2)把/home目录下面的data.zip解压到databak目录里面

unzip data.zip -d databak

(3) 覆盖源路径解压

unzip -o healthcode-catch.zip -d disaster-recovery

(4)把/home目录下面的a文件夹和3.txt压缩成为a123.zip

zip -r a123.zip a 3.txt

(5)把/home目录下面的t.zip直接解压到/home目录里面

unzip t.zip

(6)把/home目录下面的a1.zip、a2.zip、a3.zip同时解压到/home目录里面

unzip a*.zip

(7)把/home目录下面w.zip里面的所有文件解压到第一级目录

unzip -j wt.zip

2、linux tar压缩

(1)tar命令格式:

下面五个参数是独立的,压缩解压都要用到其中一个,可以和下面的命令连用但只能用其中一个。
-c: 建立压缩档案(创建一个新的tar文件)
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件

下面的参数是根据需要在压缩或解压档案时可选的。
-z:使用gzip压缩它
-j:有bz2属性的
-Z:有compress属性的
-v:详细,显示要压缩或解压缩的文件
-O:将文件解开到标准输出

-p :使用原文件的原来属性(属性不会依据使用者而变)

参数-f是必须的。
-f: 以提供的文件名作为参数创建tar文件

(2)tar命令可以用来压缩打包单文件、多个文件、单个目录、多个目录。

常用格式:

单个文件压缩打包 tar czvf my.tar file1

多个文件压缩打包 tar czvf my.tar file1 file2,…

单个目录压缩打包 tar czvf my.tar dir1

多个目录压缩打包 tar czvf my.tar dir1 dir2

解包至当前目录:tar xzvf my.tar
压缩为*.tar
tar -cvf test.tar test.txt
*.tar解压缩
tar -xvf test.tar
压缩为*.gz
tar -zcvf test.tar.gz test.txt
*.gz解压缩
tar -zxvf test.tar.gz
压缩为*.bz2
tar -jcvf test.tar.bz2 test.txt
*bz2解压缩
tar -jxvf test.tar.bz2

 3、分卷压缩

(1)使用tar分卷压缩

格式:
tar zcvf - filedir | split -d -b 500m - filename
样例:
tar zcvf - ./picture | split -d -b 500m - picture
将./picture打包,并切割为 500m 的包
输出的文件为 filename00、filename01、filename02 …
假设不加filename,则输出文件为 x00、x01、x02 …
假设不加參数 -d。则输出aa、ab、ac …

 (2)解压分卷

首先将分卷包合并
cat x* > myzip.tar.gz
然后解压
tar zxvf myzip.tar.gz

样例:
cat picture* > picture.tar.gz
tar zxvf picture.tar.gz

4、Linux脚本——把指定目录下的所有目录(文件夹)分别单独打包

(1)编写Linux shell 脚本完整代码如下 ——yasuo.sh

#!/bin/bash

function zipFile(){
  echo $1
  flist=`ls $1`
  cd $1
  echo $flist
  for f in $flist
  do
    if test -d $f
    then
      #echo "dir:$f"
      zip -r $f.zip $f
    fi
  done
}
zipFile $1
                   

 注意:

  • 传入参数——指定目录
  • ls 获取目录下文件 到 flist
  • 遍历flist判断是否是目录,如果是目录则进行打包操作 zip -r $f.zip $f

(2)应用: 

# 修改脚本属性为 可执行
chmod 755 yasuo.sh

# 指定目录即可
./yasuo.sh 123/

 (3)效果:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux环境文件或者文件夹打包 的相关文章

随机推荐

  • Intel C and C++ Compilers: Features and Supported Platforms

    Submitted by Jennifer J Intel on April 20 2015 Share Tweet Share Intel C Compiler Features Supported in Different Produc
  • c++ 可变参数的三种实现方式

    c 可变参数 方法一 C语言的 va list1 include
  • 【python零基础入门学习】python基础篇(基础结束篇)之数据结构类型-列表,元组,字典,集合(五)

    本站以分享各种运维经验和运维所需要的技能为主 python零基础入门 python零基础入门学习 python运维脚本 python运维脚本实践 shell shell学习 terraform 持续更新中 terraform Aws学习零基
  • oracle 碎片是什么意思,Oracle碎片整理全面解析

    Oracle 作为一种大型数据库 广泛应用于金融 邮电 电力 民航等数据吞吐量巨大 计算机网络广泛普及的重要部门 对于系统管理员来讲 如何保证网络稳定运行 如何提高数据库性能 使其更加安全高效 就显得尤为重要 作为影响数据库性能的一大因素
  • IRP的同步问题

    转载自 http zhan renren com debugman tagId 178558 page 2 checked true 一 前言 对设备的任何操作都会最终转化为IRP请求 而IRP一般都是由操作系统异步发送的 异步处理IRP有
  • OpenCV(三十三):计算轮廓面积与轮廓长度

    1 介绍轮廓面积与轮廓长度 轮廓面积 Contour Area 是指轮廓所包围的区域的总面积 通常情况下 轮廓面积的单位是像素的平方 轮廓长度 Contour Length 又称周长 Perimeter 表示轮廓的闭合边界的长度 轮廓的边界
  • 搞懂clientHeight、offsetHeight、scrollHeight、offsetTop、scrollTop的区别

    https juejin cn post 7018372558999257102
  • Linux系统 Ubuntu18.04安装的详细教程(提供18.04ubuntu镜像)

    文章目录 一 镜像安装 二 vim更新 gcc ifconfig下载 三 共享文件夹设置 设置 使用 测试共享文件夹是否能使用 这步可以省略 四 另外 虚拟机名称 全名 用户名 镜像文件下载 链接 https pan baidu com s
  • 心情不美丽,爬了一些美图,独自欣赏!

    小屌丝 鱼哥 咋了 心情不美丽 小鱼 嗯 小屌丝 晚上撸串去 小鱼 不 小屌丝 蹦迪 小鱼 不 小屌丝 喝酒 小鱼 不 小屌丝 猎艳 小鱼 于是乎 一段代码上来 某网站的美女图片被下载下来 直接上代码 coding utf 8 auth c
  • js中一些常用的正则

    let reg new RegExp 电话号码 let reg 1 35789 d 9 身份证号 let reg 1 9 d 16 dX d 17 d X 18 65年龄 let reg 18 19 2 5 0 9 6 0 5 密码校验 d
  • 数据库分组排序和优化策略

    数据库分组排序和优化策略 1 分组排序 查询每个部门的最高平均工资 select deptno avg sal from emp group by deptno order by avg sal limit 0 1 查询到平均工资大于200
  • Burpsuite xssvalidator测试工具使用方法

    一 安装方法 Extend搜索xss可以找到该工具 选择后点安装就行 下载phantomjs 2 1 1 windows 然后cmd终端里执行 phantomjs exe xss js 开启后是这样的 二 使用测试 打开一个有xss的网页测
  • iPhone手机UDID获取方法

    UDID iOS设备的唯一识别码 每台iOS设备都有一个独一无二的编码 这个编码 就称为识别码 也叫做UDID Unique Device Identifier 一 通过Xcode查看 手机连接电脑 打开Xcode 选择window gt
  • 理解文本编码,ASCII、Unicode、UTF8、字节序和乱码-word打开是乱码

    原文网址提示有风险 基础知识 在计算机的内部 信息都是以二进制的方式存储的 二进制的一位 bit 可以表示0和1 位也叫做比特 位作为单位太小 为了便于使用 通常使用字节 byte 来表示二进制 一个字节有8位 可以表示256种 2的8次方
  • Docker+Jenkins+Golang 持续集成交付实战

    最近因公司发展需要 增加了一些go语言开发 对项目要求使用jenkins go docker自动部署上线 一 安装jenkins 1 安装Jenkins 详情见centos使用docker搭建jenkins jenkins使用方法见jenk
  • 使用face_recognition(一)人脸识别

    关于使用face recognition 安装方面还是有些坑的 之前用的是python3 5 pip安装出错 需要dlib什么的 按照网上的教程弄 还是有问题 搞了一天搞不定 后来看到说用python3 6比较简单 就换了个版本 结果pip
  • Ubuntu 14.04升级openssh7.7p1

    安装流媒体kurento 指定操作系统是Ubuntu 14 04 用户最近安全漏洞扫描 Ubuntu主机的ssh版本太低 OpenSSH 6 6 1p1 需要需要对该主机的SSH版本进行升级 准备升级的安全包 本次升级我准备了三个文件 op
  • 【学术探讨】万能密码原理剖析

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 推荐专栏 对网络安全感兴趣的小伙伴可以关注专栏 网络安全入门到精通 万能密码 顾名思义 就是可以 登录任意网站 的账号和密码
  • ORA-28040: 没有匹配的验证协议 问题解决

    出现这类问题 是因为 jar包不匹配造成 更换ojdbc jar包可以解决 下载ojdbc7 jar 用以前的jar包会出问题 以前的jar包会出现ora 28040 没有匹配的验证协议 项目使用的 ojdbc14报错 更换oidbc6解决
  • linux环境文件或者文件夹打包

    1 linux zip压缩 压缩当前文件夹下所有文件 压缩为a zip 命令行的方法是怎样 常用格式 zip r fileName zip 文件夹名 1 把 home目录下面的data目录压缩为data zip zip r data zip