计算以相同字符开头的文件

时间:2015-03-19 19:53:45

标签: powershell get-childitem

我试图计算目录中前几个字符与字符串匹配的所有文件的计数。这是功能:

function CountMatchingID($d1,$s){
    $d = Get-ChildItem -filter $s -path $d1 | Measure-Object
    return $d.count 
}

我在目录中传递了一个带有通配符的变量。它返回目录中文件的总数。但是,如果我将函数内的$s更改为该变量的值,如下所示,它将返回具有该开头的准确文件数。

function CountMatchingID($d1,$s){
    $d = Get-ChildItem -filter "201*" -path $d1 | Measure-Object
    return $d.count 
}

这些文件是员工编号照片,其中包含员工编号,我尝试自动搜索csv文件以将其重命名为用户名,以便我们将其转储到Jabber目录中以显示照片。

我愿意接受关于更好地实现这一目标的建议。我对Powershell很新,所以欢迎任何反馈。

1 个答案:

答案 0 :(得分:0)

问题可能是您作为$s传递的内容,但您没有显示示例。这对我来说是预期的

function CountMatchingID($d1,$s){
    Get-ChildItem -filter "$s*" -path $d1 | Measure-Object | Select -ExpandProperty Count
}

我自动将星号添加到过滤器中,以便可以假设它。

示例调用看起来像这样

CountMatchingID "c:\temp" "test" 
相关问题