首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用Powershell流式播放电影时删除文件的无限循环

在使用Powershell流式播放电影时删除文件的无限循环
EN

Stack Overflow用户
提问于 2021-01-30 20:44:06
回答 1查看 56关注 0票数 0

所以我用Emby把媒体流到我的电视上。我在观看Lotr扩展到4K,显然,Emby在流式传输如此大小的文件时创建了30 of的代码转换数据。所以大约30分钟后,电影停止了,因为我的硬盘已经满了。

我创建了一个脚本,dat删除该特定文件夹中超过5分钟的文件:

代码语言:javascript
复制
$limit = (Get-Date).AddMinutes(-5)
$path = "C:\Users\*myuser*\AppData\Roaming\Emby-Server\programdata\transcoding-temp"

Get-ChildItem -Path $path -Recurse -Force | Where-Object { !$_.PSIsContainer -and $_.CreationTime -lt 
$limit } | Remove-Item -Force

现在,这可以很好地工作,但我想让它自动化,否则我必须每30分钟手动运行一次。我试着把它放在一个无限的循环中,但似乎没有删除文件:

代码语言:javascript
复制
$limit = (Get-Date).AddMinutes(-5)
$path = "C:\Users\*myuser*\AppData\Roaming\Emby-Server\programdata\transcoding-temp"

while($true){
    Get-ChildItem -Path $path -Recurse -Force | Where-Object { !$_.PSIsContainer -and $_.CreationTime -lt 
    $limit } | Remove-Item -Force
}

有人能给我解释一下为什么循环不能工作吗?什么是合适的解决方案?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-30 20:59:42

它不起作用,因为$limit在开始时只计算一次。您需要为循环的每次迭代更新$limit。我会抛出一个Start-Sleep 300来阻止它没完没了地做。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65968104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档