我们正在尝试创建一个登录脚本,该脚本将导出脚本的结果,该结果将吐出当前已登录的用户以及他们所拥有的映射驱动器。问题在于运行两个“ Get”。
我尝试了不同的变体,所有变体什么都不输出或仅输出一个命令。这段代码是我所需要的,但不会输出我所需要的。
Get-CimInstance -class Win32_ComputerSystem | select "UserName" | Export-Csv -NoTypeInformation -Append \\sn01\installs\test\test.csv ; Get-WmiObject -Class Win32_MappedLogicalDisk | select "Name" , "ProviderName" | Export-Csv -NoTypeInformation -append \\sn01\installs\test\test.csv -Force
上半部分是我要输出的用户名,然后下半部分是我希望输出驱动器的盘符以及该驱动器的路径的东西。
理想情况下,我需要三列标题为“用户名”,“名称”,“ ProviderName”,其中包含用户名,驱动器号和驱动器路径。
答案 0 :(得分:3)
您可以执行以下操作:
$user = Get-CimInstance -Class Win32_ComputerSystem | Select-Object Username
Get-WmiObject -Class Win32_MappedLogicalDisk |
Select-Object @{n='UserName';e={$user.Username}},Name ,ProviderName |
Export-Csv -NoTypeInformation -Path \\sn01\installs\test\test.csv -Force
说明:
您可以将具有Get-CimInstance
属性的Username
对象的输出存储到变量$user
中。执行第二条Select-Object
语句时,可以使用计算的属性Username
,并从$user.Username
属性中检索值。