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

时间:2017-08-30 13:50:14

标签: powershell

我正在尝试在目录中获取文件夹的最新版本,但此刻,我一直在同一目录中匹配zip文件,这些文件用于不同的进程。如何在没有扩展名且仅匹配文件夹的情况下忽略任何文件?到目前为止,这是我的代码:

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

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

1 个答案:

答案 0 :(得分:2)

-Directory开关与Get-ChildItem

一起使用
$versionToGet = (Get-ChildItem "$repo\StagingArea\$nameOfPackage" -Directory | 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