热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

1、linuxzip压缩压缩当前文件夹下所有文件,压缩为a.zip。命令行的方法是怎样。常用格式:zip-rfileName.zip文

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)效果:


推荐阅读
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • MATLAB字典学习工具箱SPAMS:稀疏与字典学习的详细介绍、配置及应用实例
    SPAMS(Sparse Modeling Software)是一个强大的开源优化工具箱,专为解决多种稀疏估计问题而设计。该工具箱基于MATLAB,提供了丰富的算法和函数,适用于字典学习、信号处理和机器学习等领域。本文将详细介绍SPAMS的配置方法、核心功能及其在实际应用中的典型案例,帮助用户更好地理解和使用这一工具箱。 ... [详细]
  • Amoeba 通过优化 MySQL 的读写分离功能显著提升了数据库性能。作为一款基于 MySQL 协议的代理工具,Amoeba 能够高效地处理应用程序的请求,并根据预设的规则将 SQL 请求智能地分配到不同的数据库实例,从而实现负载均衡和高可用性。该方案不仅提高了系统的并发处理能力,还有效减少了主数据库的负担,确保了数据的一致性和可靠性。 ... [详细]
  • 在开发过程中,我最初也依赖于功能全面但操作繁琐的集成开发环境(IDE),如Borland Delphi 和 Microsoft Visual Studio。然而,随着对高效开发的追求,我逐渐转向了更加轻量级和灵活的工具组合。通过 CLIfe,我构建了一个高度定制化的开发环境,不仅提高了代码编写效率,还简化了项目管理流程。这一配置结合了多种强大的命令行工具和插件,使我在日常开发中能够更加得心应手。 ... [详细]
  • MySQL 8.0 MGR 自动化部署与配置:DBA 和开源工具的高效解决方案
    MySQL 8.0 MGR 自动化部署与配置:DBA 和开源工具的高效解决方案 ... [详细]
  • 本文介绍了如何在 Windows 系统上利用 Docker 构建一个包含 NGINX、PHP、MySQL、Redis 和 Elasticsearch 的集成开发环境。通过详细的步骤说明,帮助开发者快速搭建和配置这一复杂的技术栈,提升开发效率和环境一致性。 ... [详细]
  • Linux Shell变量初探:初始值解析与使用指南
    本文探讨了Linux Shell中变量的基本概念及其在BASH中的应用。变量是用于存储可变数据的标识符,能够代表不同的值。文章详细介绍了BASH shell的主要优势,包括强大的命令编辑能力、自动补全功能、命令别名设置、作业控制以及前后台任务管理。此外,还涵盖了编程脚本编写和通配符的使用方法,为初学者提供了全面的指导。 ... [详细]
  • 在Ubuntu系统中配置Python环境变量是确保项目顺利运行的关键步骤。本文介绍了如何将Windows上的Django项目迁移到Ubuntu,并解决因虚拟环境导致的模块缺失问题。通过详细的操作指南,帮助读者正确配置虚拟环境,确保所有第三方库都能被正确识别和使用。此外,还提供了一些实用的技巧,如如何检查环境变量配置是否正确,以及如何在多个虚拟环境之间切换。 ... [详细]
  • 帝国CMS中的信息归档功能详解及其重要性
    本文详细解析了帝国CMS中的信息归档功能,并探讨了其在内容管理中的重要性。通过归档功能,用户可以有效地管理和组织大量内容,提高网站的运行效率和用户体验。此外,文章还介绍了如何利用该功能进行数据备份和恢复,确保网站数据的安全性和完整性。 ... [详细]
  • 如何撰写适应变化的高效代码:策略与实践
    编写高质量且适应变化的代码是每位程序员的追求。优质代码的关键在于其可维护性和可扩展性。本文将从面向对象编程的角度出发,探讨实现这一目标的具体策略与实践方法,帮助开发者提升代码效率和灵活性。 ... [详细]
  • 如何在Linux系统中实现Windows风格的桌面环境:将Ubuntu 18.04定制为Windows主题界面
    如果您是从Windows转到Linux系统的用户,可能会觉得默认的Ubuntu主题和桌面环境缺乏吸引力和可定制性。尤其是对于习惯了Windows风格的任务栏和主题的用户,Ubuntu 18.04的橙色主题可能显得过于简洁。为了提升用户体验,可以通过安装特定的桌面环境和主题来实现类似Windows的界面效果。本文将详细介绍如何在Ubuntu 18.04中配置和定制桌面环境,使其具备Windows风格的外观和功能。 ... [详细]
  • Vue 实战基础教程第9讲:深入理解计算属性与侦听器的高效使用
    Vue 实战基础教程第9讲:深入理解计算属性与侦听器的高效使用 ... [详细]
author-avatar
拍友2502906483
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有