我想删除所有上次写入日期早于当前文件的最后写入日期的txt扩展名文件(00007.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
}
答案 0 :(得分:3)
我只是使用Get-ChildItem枚举项目,使用Where-Object过滤,并直接管道到Remove-Item:
$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;
答案 1 :(得分:0)
短版
$dt = (gi "C:\Users\Jimmy\Desktop\test\00007.txt").lastwritetime
gci "C:\Users\Jimmy\Desktop\test\" -file -Filter "*.txt" | ? LastWriteTime -lt $dt | ri