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

PowerShell脚本如何获取指定多扩展名文件的逗号分隔列表?

解决PowerShell中Get-ChildItem指定多扩展名的问题

问题原因

-Filter参数仅支持单个通配符模式,没法直接传入多个扩展名集合,所以你之前尝试的(*.js , *.css)这类写法会失效。

可行解决方案

方案1:使用-Include参数

-Include支持传入多个通配符字符串数组,结合-Recurse即可筛选多扩展名文件:

# 定义要筛选的扩展名集合
$targetExtensions = @('*.js', '*.css')
# 获取指定扩展名的文件名并拼接为逗号分隔字符串
$Files_List = (Get-ChildItem -Path .\All_Subfolders\Subfolder_1\ -File -Recurse -Include $targetExtensions -ErrorAction SilentlyContinue | Select-Object -ExpandProperty Name) -join ','

注:如果不需要递归遍历子文件夹,可将路径改为.All_Subfolders\Subfolder_1\*,同时去掉-Recurse参数,确保-Include能生效。

方案2:使用Where-Object过滤

如果需要更灵活的筛选逻辑,可先获取所有文件,再通过扩展名属性过滤:

# 定义允许的扩展名(注意带英文点号)
$allowedExtensions = @('.js', '.css')
$Files_List = (Get-ChildItem -Path .\All_Subfolders\Subfolder_1\ -File -Recurse -ErrorAction SilentlyContinue | Where-Object { $allowedExtensions -contains $_.Extension } | Select-Object -ExpandProperty Name) -join ','

另外,你原来的子文件夹列表写法没问题,也可以换成更规范的写法:

$Folders_List = (Get-ChildItem ./All_Subfolders/ -Directory | Select-Object -ExpandProperty Name) -join ','

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 13:25:54