gpt4 book ai didi

list - 如何使用 Get-ChildItem -exclude 排除多个文件夹?

转载 作者:行者123 更新时间:2023-12-02 20:39:57 25 4
gpt4 key购买 nike

我需要为我们的 Pro/Engineer CAD 系统生成一个配置文件。我需要我们服务器上特定驱动器的文件夹的递归列表。但是,我需要排除其中包含“ARCHIVE”的任何文件夹,包括各种不同的情况。

我写了以下内容,除了不排除文件夹之外,它可以工作!

$folder = "T:\Drawings\Design\*"
$raw_txt = "T:\Design Projects\Design_Admin\PowerShell\raw.txt"
$search_pro = "T:\Design Projects\Design_Admin\PowerShell\search.pro"
$archive = *archive*,*Archive*,*ARCHIVE*

Get-ChildItem -Path $folder -Exclude $archive -Recurse | where {$_.Attributes -match 'Directory'} | ForEach-Object {$_.FullName} > $search_pro

最佳答案

我跳过某些文件夹的KISS方法是链接Get-ChildItem调用。这会排除根级文件夹,但不排除更深层次的文件夹(如果您需要的话)。

Get-ChildItem -Exclude folder1,folder2 | Get-ChildItem -Recurse | ...
  • 开始排除您不需要的文件夹
  • 然后执行递归搜索,排除不需要的文件夹。

我喜欢这种方法的原因是它简单易记。如果您不想在第一次搜索中混合文件夹和文件,则需要过滤器。

关于list - 如何使用 Get-ChildItem -exclude 排除多个文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15294836/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com