When running a script, I have a line to verify that a "service account" (aka a local user account) for our app exists:
$svcAccountName = "TheAccountName"
$svcAccount = Get-LocalUser -Name $svcAccountName
The server (Windows Server 2008 R2) is balking at the Get-LocalUser
cmdlet, stating:
Get-LocalUser : The term 'Get-LocalUser' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. At line:1 char:1 + Get-LocalUser + ~~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (Get-LocalUser:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
So I tried to import the LocalAccounts
module:
Import-Module Microsoft.Powershell.LocalAccounts
and I got this:
Import-Module : The specified module 'LocalAccounts' was not loaded because no valid module file was found in any module directory. At line:1 char:1 + Import-Module + ~~~~~~~~~~~~~ + CategoryInfo : ResourceUnavailable: (LocalAccounts:String)[Import-Module], FileNotFoundException + FullyQualifiedErrorId : Modules_ModuleNotFound,Microsoft.PowerShell.Commands.ImportModuleCommand
The server is running PSVersion 4.0 according to the $PSVersionTable
variable.
Why isn't the LocalAccounts
module loaded and the Get-LocalUser
command running?
How can I fix this?