PowerShell脚本清理指定天数前的临时文件夹实现代码

PowerShell清理临时文件夹,当磁盘空间变小时,我们可以通过清理临时文件夹来解决。我们使用PowerShell来写一个程序,写可以清理Windows临时文件夹中30天以前的文件。

PowerShell清理临时文件夹

当磁盘空间变小时,我们可以通过清理临时文件夹来解决。我们使用PowerShell来写一个程序,写可以清理Windows临时文件夹中30天以前的文件。

代码如下:

$cutoff = (Get-Date) - (New-TimeSpan -Days 30)
$before = (Get-ChildItem $env:temp | Measure-Object Length -Sum).Sum

Get-ChildItem $env:temp |                           
 Where-Object { $_.Length -ne $null } |            
 Where-Object { $_.LastWriteTime -lt $cutoff } |
 Remove-Item -Force -ErrorAction SilentlyContinue -Recurse -WhatIf
$after = (Get-ChildItem $env:temp | Measure-Object Length -Sum).Sum
$freed = $before - $after
'Cleanup freed {0:0.0} MB.' -f ($freed/1MB)

说明:
1、Windows临时目录在PowerShell中可以使用$env:temp来表示。
2、通过一个$cutoff变量来控制要删除文件的时间刻度,30天这个参数可以定制。
3、最后计算了一下释放了多少空间

(0)

相关推荐

  • 如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )

    语言之争由来已久,下面做一些IO实验(遍历9G多的文件,批量删除),尽量用事实来比较谁优谁劣.操作系统:win7 64 位,文件包大小:9.68G. 一.语言:C# 开发环境:vs 2013 代码总行数:43行 耗时:7秒 代码: using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; n

  • PowerShell脚本清理指定天数前的临时文件夹实现代码

    PowerShell清理临时文件夹,当磁盘空间变小时,我们可以通过清理临时文件夹来解决.我们使用PowerShell来写一个程序,写可以清理Windows临时文件夹中30天以前的文件. PowerShell清理临时文件夹 当磁盘空间变小时,我们可以通过清理临时文件夹来解决.我们使用PowerShell来写一个程序,写可以清理Windows临时文件夹中30天以前的文件. 复制代码 代码如下: $cutoff = (Get-Date) - (New-TimeSpan -Days 30) $befor

  • Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器 操作系统:CentOS IP:192.168.0.198 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 具体操作: 1.root用户登录服务器 mkdir -p /backup/oracledata #新建Oracle数据库备份目录 chown -R oracle:oinstall /backup/oracledata -R #设置目录权限为oinstall用户组的oracle用户(用户oracle与用户组oinstall是在

  • nginx访问日志并删除指定天数前的日志记录配置方法

    说明: 操作系统:CentOS 站点1:bbs.jb51.net 站点2:sns.jb51.net Nginx安装路径:/usr/local/nginx Nginx配置文件路径:/usr/local/nginx/conf/nginx.conf 站点1配置文件路径:/usr/local/nginx/conf/vhost/bbs.jb51.net.conf 站点2配置文件路径:/usr/local/nginx/conf/vhost/sns.jb51.net.conf 目的: 1.对站点1和站点2的n

  • Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录

    System.out和System.err都被打印到catalina.out.catalina.out不会rotate.一般在部署Tomcat后,运行久了,catalina.out文件会越来越大,对系统的稳定造成了一定的影响. 1.可通过修改conf/logging.properties日志配置文件来屏蔽掉这部分的日志信息. [root@localhost conf]# pwd /usr/local/tomcat/conf [root@localhost conf]# cp logging.pr

  • Linux下定时切割Tomcat日志并删除指定天数前的日志记录

    System.out和System.err都被打印到catalina.out.catalina.out不会rotate.一般在部署Tomcat后,运行久了,catalina.out文件会越来越大,对系统的稳定造成了一定的影响. 1.可通过修改conf/logging.properties日志配置文件来屏蔽掉这部分的日志信息. [root@localhost conf]# pwd /usr/local/tomcat/conf [root@localhost conf]# cp logging.pr

  • Windows下通过FTP自动备份数据到服务器并删除指定天数前的备份

    说明: 1.要备份的文件在D盘根目录下面,以时间命名,(一般我们通过护卫神的好备份软件实现备份)例如 D:\data_db_201112130001.BAK D:\data_db_201112140002.BAK D:\data_db_201112150003.BAK 每天会自动生成一个新的文件,例如2011年12月16号,会自动生成data_db_201112160004.BAK 2.要把D:\下面当天生成的那个数据定时备份到FTP服务器上,例如,今天是2011年12月16号,要把data_d

  • 批处理去除指定字符前所有的0的代码

    如文本1.txt: 代码: 0000acb0h 0b0c00a000s 0000h00ga00 a0000000 通过批处理将文本所有字符串字符a前的0去除输出如下: 代码: acb0h bca000s hga00 a0000000 要求:代码简洁.高效.通用,不生成临时文件 pusofalse: 复制代码 代码如下: @echo off for /f "delims=" %%. in (1.txt) do ( set "str=%%." call,set &quo

  • Powershell 脚本数字签名实现方法

    脚本很容易被冒名顶替或者更改,因为它们是由纯文本构成的.数字签名为脚本提供了更高的安全性,因为它能确定脚本和脚本的编辑者的唯一性,并且不能被更改.作为脚本的发布者,你能确定你的脚本没有被恶意篡改.即使专家也无能为力,因为这种机制是基于复杂逻辑的.幸运的是,在实际应用中,你不需要深究这些细节,只需要掌握Powershell脚本签名的机制和过程. 准备一个合适的证书 因为不能使用传统的纸质签名给Powershell脚本进行签名,你需要另一个工具"证书".证书就像一把私有并且安全的钥匙.证书

  • PowerShell脚本监控文件夹变化实例

    本文介绍使用PowerShell来监视一个指定的文件夹,包括新建文件.删除文件.重命名文件等操作均会被监控或监视.本文使用了System.IO.FileSystemWatcher这个.NET对象.首先,我们来看看程序: 复制代码 代码如下: # 定义要监控的文件夹,这个文件夹必须先存在. $folder = 'D:\test' # 定义每次监控的间隔时间,这时定义为1000毫秒,即1秒 $timeout = 1000 # 创建文件系统监视对象 $FileSystemWatcher = New-O

  • Powershell批量给文件增加前辍实例

    让我们假定在文件夹中你有很多脚本文件(或图片.日志等等),并且你想要将它们全部重命名.得到的新文件名应该具备如一个前缀接一个数字. 这里将告诉你怎么去实现. 例子将重命名你指定的文件夹内所有扩展名为.ps1的Powershell脚本.新的名字将成为powershellscriptX.ps1,这里的"X"是一个递增数字. 注意脚本默认还没有真正开始重命名.请特别小心要去掉它的-Whatif参数才真正的重命名文件.假设你录入的变量或输入了一个错误的目录路径,这时你的脚本会错误将数以千计的文

随机推荐