You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PowerShell遍历所有Kind为Video的视频文件(不限扩展名)

按文件类型(Kind:Video)遍历文件的PowerShell实现方法

方法1:遍历当前文件夹的视频文件

直接调用Windows Shell对象识别文件类型,和Windows搜索的kind:video逻辑完全匹配:

# 创建Shell应用对象
$shell = New-Object -ComObject Shell.Application
# 获取当前文件夹的Shell命名空间实例
$currentFolder = $shell.Namespace((Get-Location).Path)

# 筛选类型包含"video"的文件并输出路径
$currentFolder.Items() | Where-Object { $_.Type -match 'video' } | ForEach-Object {
    Write-Output $_.Path
}

# 使用后释放Com对象,避免内存占用
[System.Runtime.Interopservices.Marshal]::ReleaseComObject($shell) | Out-Null

方法2:递归遍历所有子文件夹的视频文件

如果需要遍历当前目录及所有子目录的视频文件,可结合Get-ChildItem递归获取文件,再通过Shell对象判断类型:

$shell = New-Object -ComObject Shell.Application

Get-ChildItem -Recurse -File | ForEach-Object {
    # 获取当前文件的Shell对象
    $fileShellObj = $shell.Namespace($_.DirectoryName).ParseName($_.Name)
    # 判断是否为视频类型
    if ($fileShellObj.Type -match 'video') {
        Write-Output $_.FullName
    }
}

[System.Runtime.Interopservices.Marshal]::ReleaseComObject($shell) | Out-Null

补充说明

  • 这里依赖的Type属性对应Windows资源管理器中「类型」列的内容,和系统内置的kind:video识别规则一致,能自动匹配所有系统认定的视频文件,无需手动枚举扩展名。
  • 递归遍历的速度取决于文件总量,大量文件场景下可能稍慢,但胜在识别准确性高。

内容的提问来源于stack exchange,提问作者Vicky Dev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 14:04:53