gpt4 book ai didi

arrays - 无法获得-Powershell中包含的内容可以按预期工作

转载 作者:行者123 更新时间:2023-12-03 00:51:19 24 4
gpt4 key购买 nike

我试图在Powershell中编写一个脚本,以匹配文件名的扩展名。这是我到目前为止所拥有的:

$location = $args[0];

[String]$extensions = @(".mkv", ".mp4", ".avi", ".wmv");
$pruneSize = 41240000;

Set-Location $location;

Get-ChildItem -Recurse | ForEach-Object {
If($extensions -contains $_.Extension) {
Write-Host "Found it";
}
else {
Write-Host $_.Extension not found in $extensions;
}
}

这是输出:
.mp4 not found in .mkv .mp4 .avi .wmv
.bat not found in .mkv .mp4 .avi .wmv
.bat not found in .mkv .mp4 .avi .wmv

因此,似乎应该可以,但不能。如果我将“-contains”切换为“-match”,那么它可以工作,尽管我不想使用match,因为看起来-contains应该是我真正想要的,并且对于我所需要的更为准确。我是否缺少一些Powershell的怪癖?

谢谢!

最佳答案

尝试从[String]之前删除$extensions

关于arrays - 无法获得-Powershell中包含的内容可以按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24844009/

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