2017-05-30 80 views
0

我想刪除上一個寫入日期比當前日期的最後寫入日期(00007.txt是當前文件)的所有txt擴展文件,但無法弄清楚路要走刪除比指定的文件舊的所有文件

$a = (get-item C:\Users\Jimmy\Desktop\test\*.txt).lastwritetime 

$b = (get-item C:\Users\Jimmy\Desktop\test\00007.txt).lastwritetime 


while ($a[$i] -lt $b) 
{ 
$i++ 
remove-item $a 
} 

回答

3

我只是列舉以Get-ChildItem,用在哪裏,對象過濾器和管道直接刪除,項目的項目:

$b = (get-item C:\Users\Jimmy\Desktop\test\00007.txt).lastwritetime 

Get-ChildItem -Path C:\Users\Jimmy\Desktop\test\*.txt | Where-Object { 
    $_.LastWriteTime -lt $b 
} | Remove-Item; 
0

短版

$dt = (gi "C:\Users\Jimmy\Desktop\test\00007.txt").lastwritetime 
gci "C:\Users\Jimmy\Desktop\test\" -file -Filter "*.txt" | ? LastWriteTime -lt $dt | ri 
相關問題