(九)Powershell按日期生成文件夹以及定期打包备份

本文介绍了如何使用Powershell脚本来自动按日期生成文件夹,避免工作目录混乱,并定期打包和整理历史文件,包括每月和每年的归档操作。作者详细展示了如何使用Get-Date,AddMonths,Test-Path等命令实现这一功能。
  1. 工作中以前是用bat script写按日期生成文件夹,过一段后都是手动移动到固定文件夹里,不然的话,工作目录里一大堆文件夹,找最近使用的也不方便
  2. 现在的想法是以下这样
    2.1在work目录下,每天按系统时间生成文件夹,如果存在,就不生成,不存在就生成,work下同时创建一个公共文件夹,放常用的东西
    2.2每到新的一个月,就把上个月的文件夹打包,并按yyyyMM格式命名,work下的文件夹删除
    2.3每到新的一年就把上一年的压缩包打包成一个包,并按年份yyyy命名,这部分和月份处理类似,就不浪费时间了

3.首先按日期生成文件夹

$date = Get-Date -Format "yyyyMMdd" 
if (!(Test-Path -Path ./$date)) {
   
   
    New-Item -Path . -Name $date -ItemType "directory"
} 
if (!(Test-Path -Path ./"公共文件夹")) {
   
   
    New-Item -Path . -Name "公共文件夹" -ItemType "directory"
} 

4.把上个月的文件夹打包,并删除文件夹
4.1创建上个月的文件夹,执行以下代码生成20230701~20230731的文件夹

1..31 | %{
   
   mkdir ("202307{0:D2}" -f $_)}

※%{}是foreach(Foreach-Object)的简写
※{0:D2}是Powershell的format写法,参见Windows PowerShell Tip of the Week
※Windows PowerShell Tip of the Week里的例子
Windows PowerShell Tip of the Week里的例子
官网例子:

$a = 348 

"{0:N2}" -f $a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值