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

PowerShell中gci -recurse如何排除C:\Users下的AppData及Application Data目录

解决PowerShell递归排除AppData目录的问题

你的命令失效的核心原因是:gci -Recurse会先遍历所有目录(包括AppData下的子目录),而你仅过滤了名称为AppData/Application Data的顶层目录,子目录的名称不是AppData,所以会被保留,最终输出仍包含AppData的子路径。

两种有效解决方案

方案1:用-Exclude参数直接跳过目标目录(推荐,效率更高)

-Exclude参数会在递归时直接跳过指定名称的目录,不会遍历其下的子项,从根源避免子目录被获取:

gci -Force -Dir -R -Exclude 'AppData', 'Application Data' 2>$null | % FullName | select -f 10

方案2:通过完整路径正则匹配过滤

如果需要更精确的路径匹配(比如避免误判名称含AppData的其他目录),可以用正则表达式匹配完整路径中的独立目录项:

gci -Force -Dir -R 2>$null | ? { $_.FullName -notmatch '\\(AppData|Application Data)\\' } | % FullName | select -f 10

正则\\(AppData|Application Data)\\确保匹配的是作为独立目录名的AppData或Application Data,不会误过滤名称中包含这些字符串的其他目录。

执行任意一种方案后,输出将不再包含AppData及其子目录的路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 09:42:45