Powershell 仅匹配目录中的文件夹,忽略任何扩展名为

Powershell 仅匹配目录中的文件夹,忽略任何扩展名为,powershell,Powershell,我试图获取目录中文件夹的最新版本,但目前,我还在同一目录中匹配用于不同进程的zip文件。如何忽略没有扩展名的文件,而只匹配文件夹?这是我目前的代码: $versionToGet = (Get-ChildItem "$repo\StagingArea\$nameOfPackage" | Sort CreationTime -Descending | Select -First 1).Name 如何调整此行以忽略任何具有扩展名的文件并仅抓取文件夹?使用-目录开关: PowerShell v3.0

我试图获取目录中文件夹的最新版本,但目前,我还在同一目录中匹配用于不同进程的zip文件。如何忽略没有扩展名的文件,而只匹配文件夹?这是我目前的代码:

$versionToGet = (Get-ChildItem "$repo\StagingArea\$nameOfPackage" | Sort CreationTime -Descending | Select -First 1).Name

如何调整此行以忽略任何具有扩展名的文件并仅抓取文件夹?

使用
-目录
开关:


PowerShell v3.0中引入了目录开关,对于早期版本,请在
PSIsContainer
noteproperty上进行筛选:

$versionToGet = (Get-ChildItem "$repo\StagingArea\$nameOfPackage" |Where-Object {$_.PSIsContainer} |Sort CreationTime -Descending | Select -First 1).Name

谢谢,我已尝试在
PSIsContainer noteproperty
上进行筛选,因为我使用的是较旧版本的Powershell,但我仍在使用*.zip文件。@methuselah更新了答案,我在Where对象筛选器中错误地添加了
-not
运算符
$versionToGet = (Get-ChildItem "$repo\StagingArea\$nameOfPackage" |Where-Object {$_.PSIsContainer} |Sort CreationTime -Descending | Select -First 1).Name