国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PowerShell > 正文

用PowerShell刪除N天前或指定日期(前后)創建(或修改)的文件

2020-05-30 20:21:42
字體:
來源:轉載
供稿:網友

本來想用批處理的,想想算時間太麻煩了……

立馬安裝PowerShell看幫助文檔,里面有個例子:

以下命令查找 Program Files 文件夾中上次修改日期晚于 2005 年 10 月 1 日并且既不
小于 1 MB 也不大于 10 MB 的所有可執行文件(測試發現沒法運行-_-!):

Get-ChildItem -Path $env:ProgramFiles -Recurse -Include *.exe | Where-Object `
-FilterScript {($_.LastWriteTime -gt "2005-10-01") -and ($_.Length -ge 1m) `
-and ($_.Length -le 10m)}

改了一下成為下面的,以刪除D:/test及子目錄里10天前創建的文件為例,測試請謹慎!
因為內容太長顯示成多行,實際上是一行。用“`”字符作為延續符(雙引號內的,是重
音符不是單引號),相當于vbs的“_”,它告訴Windows PowerShell下一行是延續部分,
它在整行如果不換行就無法置于庫中這種情況下有用。只允許將表達式作為管道的第一
個元素。

一行命令取得過期文件列表:
Get-ChildItem -Path D:/test -Recurse -ErrorAction:SilentlyContinue | `
Where-Object -FilterScript {(((get-date) - ($_.CreationTime)).days -gt 10 `
-and $_.PsISContainer -ne $True)} | Select-Object FullName

一行命令刪除過期文件:
Get-ChildItem -Path D:/test -Recurse -ErrorAction:SilentlyContinue | `
Where-Object -FilterScript {(((get-date) - ($_.CreationTime)).days -gt 10 `
-and $_.PsISContainer -ne $True)} | Remove-Item

一行命令刪除過期文件(包括刪除只讀、隱藏):
Get-ChildItem -Path D:/test -Force -Recurse -ErrorAction:SilentlyContinue | `
Where-Object -FilterScript {(((get-date) - ($_.CreationTime)).days -gt 10 `
-and $_.PsISContainer -ne $True)} | Remove-Item -Force
當然,可以用別名簡寫命令。


或者先在Types.ps1xml文件里找到System.IO.FileInfo,增加Age成員:

<Name>System.IO.FileInfo</Name>
   <Members>
       <ScriptProperty>
           <Name>Age</Name>
           <GetScriptBlock>
              ((get-date) - ($this.creationtime)).days
           </GetScriptBlock>
       </ScriptProperty>
   </Members>

添加的內容是從<ScriptProperty>到</ScriptProperty>,修改后以后不用再加。

腳本內容:

ForEach ($file in Get-ChildItem D:/test/* -Force -Recurse `-ErrorAction:SilentlyContinue)  {    if (($file).Age -ge 10 -and $file.PsISContainer -ne $True)      {$file.Delete()}  }

這里不能使用{Remove-Item -Force "$file"}

腳本擴展名是.ps1,擴展名里的是數字1。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 舞钢市| 关岭| 湘潭市| 准格尔旗| 会泽县| 察哈| 理塘县| 阿合奇县| 隆安县| 虞城县| 成安县| 太谷县| 桃源县| 镇远县| 灌云县| 横山县| 北京市| 定日县| 星座| 耿马| 宣汉县| 东海县| 岐山县| 泗洪县| 莱西市| 石门县| 天祝| 抚宁县| 响水县| 丹寨县| 阜城县| 松原市| 务川| 开封县| 金塔县| 资中县| 理塘县| 时尚| 江西省| 凯里市| 天全县|