[英]How to filter and exclude files from gci?
我正在使用以下內容:
Get-ChildItem $CSV_Files_Path -Filter *.csv | foreach-object {...}
有一個特定的 csv 文件,但我希望排除。 當然我可以將它從那個目錄中移動,但是每次替換它時我都必須這樣做,所以我希望它是動態的......
我知道我們不能將排除與過濾器結合起來,那么我該如何實現呢?
偽代碼:
Get-ChildItem $CSV_Files_Path -Filter *.csv -Exclude Fact.csv | foreach-object {...}
更好的是,我想進一步排除用戶輸入文件。
即param($excludedfiles)
$excludedfiles = 'C:\CSVFiles\Fact.csv, C:\CSVFiles\fileabc.csv'
甚至像以下那樣靈活:
$excludedfiles = 'Fact.csv, fileabc.csv'
偽代碼:
$excludedfiles = $excludedfiles.Split('(.+?)(?:,|$)')
Get-ChildItem $CSV_Files_Path -Filter *.csv -Exclude $excludedfiles | foreach-object {...}
powershell 5 中的 -filter、-include 和 -exclude 有很多煩人的事情。在較新的版本中已解決。 您可以結合 -path 和 -exclude:
get-childitem -path *.csv -exclude file1.csv,file2.csv
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.