.Net钩子从Powershell中的路径获取文件夹名称

时间:2018-10-01 22:05:57

标签: .net powershell

我看到了这个解决方案: Get folder name from full file path

可接受的答案是:

string dirName = new DirectoryInfo(@"c:\projects\roott\wsdlproj\devlop\beta2\text").Name;

但这在C#中。我目前正在尝试.net挂接该方法并使其在Powershell中运行,但是我不确定如何正确使用该对象。

这是我目前拥有的:

$AppPath = "$null"
$PathArray = @()
$ParentFolderNames = @()
$DirObject = New-Object -TypeName System.IO


Get-ChildItem -Path $ServerPath | Select-Object FullName | ForEach-Object {

    ## $_.GetType()
    $String = ("$_.").ToString()
    $PathArray += $String.Split("=")[1]

}

foreach ($object in $PathArray){
    ## $ParentFolderNames += $object.Split("$\*")[1]

    $ParentFolderNames += $DirObject.DirectoryInfo("$Object").Name

}
$ParentFolderNames

我得到的错误是“您不能在空值表达式上调用方法”。但是,$ object不为null。

当我在foreach循环中调用它时,会得到所需的输出。但是我无法通过该.net钩子来获取最后一个文件夹名称。

编辑:所以我意识到我正在尝试发明轮子。我应该刚完成“选择对象名称”而不是“全名”。然后使用Trim删除我不需要的任何字符。

但是我仍然想知道如何正确使用该.Net钩子

0 个答案:

没有答案