0

这是一个令人痛苦的问题,但在这里。我正在创建一个 powershell 脚本来报告 netapp 上的文件管理器共享。我已经到了可以创建所有共享报告的地步,但我现在要做的是从 CSV 输出中获取我创建的数组并提取共享名值。但是我想在这个值前面附加服务器名“\filer\”,以便它创建一个 UNC 路径。

我打算查看 UNC 并使用它来生成有关文件管理器共享的信息。NTFS 权限、路径信息等。

这是代码:

$sharelist = Import-CSV z:\shares.csv
foreach ($item in $sharelist)
{
$sharelist += $item | add-member -name "Filer" -Value "\\<filername>\" -Membertype NoteProperty
}

这是创建一个数组,然后向数组添加一个新属性以匹配我的 UNC 信息...

然后我运行一个选择对象来清理输出:

$sharelist | select-object mountpoint,filer,sharename,description | export-csv Z:\sharereport.csv -NoTypeInformation

这会产生一个新的 csv,当我在 excel 中打开它时它会很好且有条理。

但是现在我想获取对象“filer”和“sharename”并将它们放在一起以生成这样的 UNC 路径:

\\<filername>\<sharepath>

我想也许我可以使用如下的 foreach 循环:

foreach ($object in $sharelist.sharename)
{
$object -replace $object,"\\<filer>\" + $object
}

然而这不起作用......我认为必须有一些不同的想要这样做,所以我很感激任何关于这方面的指导。简单的问题,但我的 powershell 非常糟糕(尽管它越来越好)。

此外,我正在使用 Netapp Powershell 工具包获取有关共享的信息,以生成原始共享列表数组。

感谢大家。

4

1 回答 1

1

尝试加入路径...

foreach ($object in $sharelist) {
    Join-Path \\<filer>\ $object
}
于 2013-08-07T18:28:20.690 回答