作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
首先让我说我看过 Unable to exclude directory using Get-ChildItem -Exclude parameter in Powershell和 How can I exclude multiple folders using Get-ChildItem -exclude? .这些都没有解决我的问题的答案。
我需要递归搜索目录以查找具有特定扩展名的文件。为简单起见,假设我需要找到 *.txt
.通常,此命令就足够了:
Get-ChildItem -Path 'C:\mysearchdir\' -Filter '*.txt' -Recurse
node_modules
目录埋在某处
C:\mysearchdir\
, NPM 创建极深的嵌套目录。 (它是 NPM 托管目录的细节很重要,因为这意味着深度超出了我的控制。)这会导致以下错误:
Get-ChildItem : The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters.
C:\mysearchdir\dir1\dir2\dir3\node_modules
说,并且我需要在所有这些级别搜索目录。因此,随着更多文件和目录的添加,仅搜索它周围的其他目录将会很麻烦并且不太易于维护。
-Exclude
参数没有任何成功。这并不奇怪,因为我
just read那个
-Exclude
仅在获取结果后应用。我找不到有关使用
-Filter
的任何真实信息(如
this answer 中所述)。
Get-ChildItem
工作,还是我一直在写我自己的递归遍历?
最佳答案
哦,伙计,我觉得自己很愚蠢。我和你面临着同样的问题。当我到达“-EA SilentlyContinue”部分时,我正在使用@DarkLite1 的答案,试图解析它。
面部护理!
这就是你所需要的!
这对我有用,试试看:
Get-ChildItem -Path 'C:\mysearchdir\' -Filter '*.txt' -Recurse -ErrorAction SilentlyContinue
关于powershell - 如何防止 Get-ChildItem 遍历特定目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28977651/
我是一名优秀的程序员,十分优秀!