私はWin10とPowershell 5.0を新しくインストールしました。私はupdate-helpを実行しています。ただし、Get-Commandは、通常モードでも昇格モードでも、null参照例外を返します。私はまた、-noprofileでRunからPowershellを実行しようとしましたが、ユーザーと昇格モードの両方で同じエラーが表示されます。ここではいくつかの追加情報がある:Powershell 5.0/Windows 10 Get-Command Nullリファレンス例外
PS Z:\> Get-WmiObject Win32_OperatingSystem | Select-Object -Property Version, ServicePackMajorVersion, ServicePackMinorVersion
Version ServicePackMajorVersion ServicePackMinorVersion
------- ----------------------- -----------------------
10.0.10586 0 0
PS Z:\> $PSVersionTable
Name Value
---- -----
PSVersion 5.0.10586.122
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.10586.122
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
PS Z:\> get-command
>> TerminatingError(Get-Command): "Object reference not set to an instance of an object."
get-command : Object reference not set to an instance of an object.
At line:1 char:1
+ get-command
+ ~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Get-Command], NullReferenceException
+ FullyQualifiedErrorId : System.NullReferenceException,Microsoft.PowerShell.Commands.GetCommandCommand
get-command : Object reference not set to an instance of an object.
At line:1 char:1
+ get-command
+ ~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Get-Command], NullReferenceException
+ FullyQualifiedErrorId : System.NullReferenceException,Microsoft.PowerShell.Commands.GetCommandCommand
PS Z:\> $error[0] | format-list * -force
PSMessageDetails :
Exception : System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.PowerShell.Commands.GetCommandCommand.IsCommandMatch(CommandInfo& current, Boolean& isDuplicate)
at Microsoft.PowerShell.Commands.GetCommandCommand.AccumulateMatchingCommands(IEnumerable`1 commandNames)
at System.Management.Automation.CommandProcessor.ProcessRecord()
TargetObject :
CategoryInfo : NotSpecified: (:) [Get-Command], NullReferenceException
FullyQualifiedErrorId : System.NullReferenceException,Microsoft.PowerShell.Commands.GetCommandCommand
ErrorDetails :
InvocationInfo : System.Management.Automation.InvocationInfo
ScriptStackTrace : at <ScriptBlock>, <No file>: line 1
PipelineIterationInfo : {}
PS Z:\> $error[0].line
PS Z:\> $error[0].exception | format-list * -force
Message : Object reference not set to an instance of an object.
Data : {}
InnerException :
TargetSite : Boolean IsCommandMatch(System.Management.Automation.CommandInfo ByRef, Boolean ByRef)
StackTrace : at Microsoft.PowerShell.Commands.GetCommandCommand.IsCommandMatch(CommandInfo& current, Boolean& isDuplicate)
at Microsoft.PowerShell.Commands.GetCommandCommand.AccumulateMatchingCommands(IEnumerable`1 commandNames)
at System.Management.Automation.CommandProcessor.ProcessRecord()
HelpLink :
Source : System.Management.Automation
HResult : -2147467261
ユーザーと上昇モードの両方で更新ヘルプを実行した後、私はPowerShellでやった次のことは、「私はドンので、私はそれが問題を引き起こしたのかはわからないSQL Power Docをインストールしましたインストールの前にGet-Commandを使用して呼び出します。インストール中に
は、私はこれらのコマンドを発行:
Set-ExecutionPolicy RemoteSigned -Force
New-Item -type directory -path "$([Environment]::GetFolderPath([Environment+SpecialFolder]::MyDocuments))\WindowsPowerShell\Modules"
Set-Location "$([Environment]::GetFolderPath([Environment+SpecialFolder]::MyDocuments))\WindowsPowerShell"
私はGet-Commandコマンドのヘルプを実行すると - それはエラーなしで動作します:
PS Z:\> help get-command
NAME
Get-Command
SYNOPSIS
Gets all commands.
SYNTAX
Get-Command [[-ArgumentList] [<Object[]>]] [-All] [-FullyQualifiedModule [<ModuleSpecification[]>]] [-ListImported] [-Module [<String[]>]] [-Noun [<String[]>]] [-ParameterName [<String[]>]] [-ParameterType [<PSTypeName[]>]] [-ShowCommandInfo] [-Syntax] [-TotalCount
[<Int32>]] [-Verb [<String[]>]] [<CommonParameters>]
Get-Command [[-Name] [<String[]>]] [[-ArgumentList] [<Object[]>]] [-All] [-CommandType {Alias | Function | Filter | Cmdlet | ExternalScript | Application | Script | Workflow | Configuration | All}] [-FullyQualifiedModule [<ModuleSpecification[]>]] [-ListImported]
[-Module [<String[]>]] [-ParameterName [<String[]>]] [-ParameterType [<PSTypeName[]>]] [-ShowCommandInfo] [-Syntax] [-TotalCount [<Int32>]] [<CommonParameters>]
DESCRIPTION
The Get-Command cmdlet gets all commands that are installed on the computer, including cmdlets, aliases, functions, workflows, filters, scripts, and applications. Get-Command gets the commands from Windows PowerShell modules and snap-ins and commands that were
imported from other sessions. To get only commands that have been imported into the current session, use the ListImported parameter.
Without parameters, a Get-Command command gets all of the cmdlets, functions, workflows and aliases installed on the computer. A Get-Command * command gets all types of commands, including all of the non-Windows-PowerShell files in the Path environment variable
($env:path), which it lists in the "Application" command type.
A Get-Command command that uses the exact name of the command (without wildcard characters) automatically imports the module that contains the command so you can use the command immediately. To enable, disable, and configure automatic importing of modules, use the
$PSModuleAutoLoadingPreference preference variable. For more information, see about_Preference_Variables (http://go.microsoft.com/fwlink/?LinkID=113248).
Get-Command gets its data directly from the command code, unlike Get-Help, which gets its information from help topics.
In Windows PowerShell 2.0, Get-Command gets only commands in current session. It does not get commands from modules that are installed, but not imported. To limit Get-Command in Windows PowerShell 3.0 and later to commands in the current session, use the
ListImported parameter.
Starting in Windows PowerShell 5.0, results of the Get-Command cmdlet display a Version column by default; a new Version property has been added to the CommandInfo class.
RELATED LINKS
Online Version: http://go.microsoft.com/fwlink/p/?linkid=289583
Export-PSSession
Get-Help
Get-Member
Get-PSDrive
Import-PSSession
about_Command_Precedence
REMARKS
To see the examples, type: "get-help Get-Command -examples".
For more information, type: "get-help Get-Command -detailed".
For technical information, type: "get-help Get-Command -full".
For online help, type: "get-help Get-Command -online"
誰もが明らかに何も見えていますか?どんな助けもありがとうございます。
明確にする:Windows 10 OSを新しくインストールしましたが、手動でPowerShell 5.0をインストールしようとしませんでしたか? PS 5には10が付属しているので? – gravity
それは正しいです。 – SFAgitator
'Modules'ディレクトリの名前を一時的に変更し、' Get-Command'を再度実行して修正したかどうか確認することは価値があるかもしれません。あなたがモジュールを追加したのを見た後、私はそれが関連していることを賭けています。それが修復されない場合は復元し、私たちに知らせてください;;) – gravity