1

我正在尝试制作一个输入主机名并告诉我当前登录用户的脚本。当我在 powershell 提示符下(以管理员身份)一一运行命令时它可以工作,但是当我运行实际脚本本身时不会产生预期的输出。

以下是相关代码:

$Row.Hostname = $Hostname
$getwmiobject = Get-WmiObject -class Win32_computersystem -computername $Hostname
$Username = $Getwmiobject.username

    if($UserName -eq $NULL) {
    $Row.Username = "No Current Logged on User"
    }
        else {$Row.Username = $Username
    }

$csvfile += $Row

$csvfile |sort-object Hostname | Export-Csv "foo.csv

在命令行中运行时,我得到了正确的用户。当作为脚本运行时,我得到“没有当前登录用户”。我不知道为什么会这样。

编辑:我想重要的是要提到我将输出写入文件,并在上面的代码中进行了更改。

4

1 回答 1

0

检查您为$Hostname变量输入的任何额外字符,例如换行符`n。当你输入它时,它可能不会给你一个错误并且工作,因为它不需要处理这样的事情。

于 2013-02-11T19:41:54.137 回答