Powershell获取内容文本文件并运行msinfo32.exe

时间:2013-05-14 15:43:14

标签: powershell msinfo32

$computers = Get-Content -Path C:\output\output.txt
$output = '\\PCname\c$\output\'
$output1 = '.txt'
($output2 =$output+$computers+$output1)
msinfo32.exe /report $output2 /computer $computer

我得到的是msinfo32.exe / report $ output2 / computer $计算机正在读取第一个PCname并且只读取该名称,并且写入文件名是每个PCname,每个PCname之间留有空格。对不起,大多数似乎是一个简单的问题,我刚刚开始使用PS。

由于

1 个答案:

答案 0 :(得分:1)

这里有两个问题。

  1. 要将字符串正确地连接到路径,您需要使用Join-Path
  2. 您只获得第一个计算机名称,因为您没有遍历计算机列表。
  3. 快速&脏版本(假定每个计算机名称在output.txt

    中都有自己的行
    $computers = Get-Content -Path C:\output\output.txt;  
    $output = '\\PCname\c$\output\';  
    $output1 = '.txt';  
    $computers | foreach-object {
        $output2 = (join-path -path $output -childpath $_) + ".txt";  
        msinfo32.exe /report $output2 /computer $_;  
    }