windows 压缩指定目录下每个目录和文件为zip文件的powershell脚本

2023-05-16

某个文件夹下有几十个子文件夹,想要单个压缩每个子文件夹备份到云盘

如果手动操作会有点累,尝试写个脚本吧

版本

适用于win10、win11
其他版本未测试

一、编写脚本

众所周知windows下有两种自带脚本cmd和powershell,微软在主推powershell

百度搜索powershell文件压缩找到了Compress-Archive命令

查看官方文档中该命令的描述

根据文档编写脚本如下

# 传入父目录
param([string]$PathName)
# 遍历该父目录下的所有子目录与文件
foreach($file in dir $PathName)
{
	# 打印文件名字
    $File.Name
    # 生成的源目录
	$source=$PathName + "\" + $File.Name
	# 生成的压缩文件名
	$target=$PathName + "\" + $File.Name + ".zip"
	# 执行压缩操作
	Compress-Archive -Path $source -DestinationPath $target
}

在任意文件夹右键——>新建——>文本文档
在这里插入图片描述
将文件名改为zip_all.ps1——>点击是
在这里插入图片描述
右键点击文件——>点击打开方式
在这里插入图片描述
点击记事本——>点击确定

在这里插入图片描述
粘贴脚本到记事本里——>保存——>关闭记事本

在这里插入图片描述

二、执行脚本

1 打开powershell

点击开始菜单——>输入powershell——>点击以管理员身份运行——>点击是
在这里插入图片描述

2 执行脚本

2.1 修改权限

执行修改权限命令,键盘输入A

set-executionpolicy remotesigned

在这里插入图片描述
如果不修改权限就会像这里一样报个错

2.2 执行脚本

复制如下命令,按回车键执行启动脚本的命令

# 执行脚本,参数应该根据自己情况修改
powershell.exe E:\tmp\temp\zip_all.ps1 -PathName "E:\tmp\tmp"

执行参数解释:

  • E:\tmp\temp\zip_all.ps1这里的E:\tmp\temp是存放脚本的目录
  • "E:\tmp\tmp"这里的"E:\tmp\tmp"是我要打包的所有子目录的父目录

执行打包脚本前的父目录
在这里插入图片描述
执行输出
在这里插入图片描述

打开目录,可以看到每个目录和文件都压缩好了在这里插入图片描述

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

windows 压缩指定目录下每个目录和文件为zip文件的powershell脚本 的相关文章

  • MyBatis简介与运用

    1 Mybatis简介 1 1 Mybatis是什么 Mybatis是一个java的持久层框架 xff0c 保存到数据库 持久化 xff1a 保存到本地文件 1 2 Mybatis的作用 操作数据库 1 3 为什么要学习mybatis 1
  • SpringMVC入门原理

    1 Springmvc原理 1 1 什么是springmvc SpringMVC是一个Spring框架内置的对MVC模式的实现 xff0c 就spring的一个子模块 1 2 什么是mvc Model view controller 模型
  • MyBatis逆向工程建立实体

    下面是用MyEcplise开发工具 为例 使用Ecplise操作步骤雷同于MyEcplise 1 第一步 2 搜索MyBatis 等待装载完成 xff0c 完成后 3 创建一个web项目 创建包 xff0c 创建generatorConfi
  • python apscheculer 报错 skipped: maximum number of running instances reached (1)

    apscheduler定时任务报错skipped maximum number of running instances reached 1 原因是默认max instances最大定时任务是1个 xff0c 可以通过在add job中调m
  • java 反射很重要

    1 创建一个User类 public class User private String username private String password private String name public User public Use
  • Netty入门案例教程

    1 首先导入netty all 5 0 0 Alpha1 jar 2 创建一个NettyConfig 整个工程的全局配置 package websocketcom netty import io netty channel group Ch
  • 微信公众号分享的坑

    记一次微信公众号分享sdk 这里我的脚本是用jquery写的 xff0c 不带框架源码 首先创建jsp引入JavaScript微信分享js lt script type 61 34 text javascript 34 src 61 34
  • java linux部署web项目详解

    下载SecureCRT连接linux xff0c 激活SecureCRT跟怎么连接自行百度喽 xff0c 下面开始操作linux服务器 1 查看安装的jdk rpm qa grep java 2 如果有旧的jdk xff0c 就卸载jdk
  • 人工智能如何可以思考?

    近日在给同事讲人工智能的时候 xff0c 提到当数据量不够的时候 xff0c 必要时需要加入人工工程 xff0c 引导计算机 归纳 一些知识 xff0c 毕竟计算机智能比起人类智能 xff0c 最大的缺陷可能在于不懂得 举一反三 换句话说
  • 在Ubuntu 20.04上安装Google Chrome浏览器

    在Ubuntu上安装Google Chrome
  • OpenCV人脸识别之FisherFace算法(LDA线性判别分析)

    FisherFace算法 Fisherface是由Ronald Fisher发明的 xff0c Fisherface所基于的LDA xff08 Linear Discriminant Analysis xff0c 线性判别分析 xff09
  • Spring 源码-Spring的注解是如何解析的?(7)

    我们知道 ConfigurationClassPostProcessor实际上是BeanFactoryPostProcessor的一个实现类 xff0c 他特殊的地方是他还实现了BeanDefinitionRegisterPostProce
  • 在Keil5中更改工程名字的方法(亲测有效)

    1 在工程所在文件夹中的用户文件夹中找到 uvprojx 和 uvoptx 将其名称改为自己需要的名称 xff1b 2 打开 uvprojx 文件 xff0c 点击魔术棒旁边的 彩色品字 更改Project Targets 中的名称 xff
  • linux防火墙添加开放端口

    linux防火墙添加开放端口 添加开放端口 sudo firewall cmd zone 61 public add port 61 开放的端口号 协议 tcp udp permanent permanent 添加的端口号永久生效 使新增的
  • Python爬虫初探(六)——爬虫之xpath实战(爬取高考分数线信息)

    一 得到要爬取的url 二 拿到网页源码 三 得到各省份分数链接 上一章我们讨论了xpath的简单使用 xff0c 这次我们就来实际应用一下xpath xff0c 看看它使用有多方便 最近高考结束 xff0c 各省分数线也陆续公布了 xff
  • win10,secoclient总是报错:与对方建立连接超时,配置错误或网络故障

    场景 xff1a 连接公司vpn secoclient总是报错 xff1a 与对方建立连接超时 xff0c 配置错误或网络故障 解决方案 xff1a 1 进入 设备管理器 gt 网络适配器 xff0c 找到SVN Adapter V1 0
  • 容器agetty进程占用cpu过高问题解决方案

    1 查到agetty进程是哪一个容器的 命令 docker span class token function ps span q span class token operator span span class token functi
  • Log4j和slf4j

    slf4j slf4j 全称是Simple Loging Facade For Java 是一个为Java程序提供日志输出的统一接口 xff0c 并不是一个具体的日志实现方案 xff0c 就 好像我们经常使用的JDBC一样 xff0c 只是
  • MTK分区案例1:system_b分区中没有system_other.img

    一 首次开机五十几秒 乍一看 开机慢不归我们管 没错 是系统组负责 系统组会做开机优化 然后把开机优化的数据放在system other img里面 system other img在分区表里面在ab分区默认设置是烧到system b分区里
  • excel对比两边数据去重

    需求 筛选重复数据 xff0c A列是1000条数据 xff0c C列是100条数据 xff0c 删除重复的数据 xff0c 只剩900条 首先 xff0c A列数据要分列 xff0c 因为数据格式不一样 xff0c 会导致后面的问题 xf

随机推荐