2017-12-18 51 views
-1

私は、Windowsマシンで再起動が必要かどうかを知ろうとしています。しかし、私のスクリプトは投げていてエラーです。保留中の再起動を確認するにはどうすればよいですか?

powershell "$key = Get-Item "HKLM:SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired" -ErrorAction SilentlyContinue" 

Error : 
Get-Item : A positional parameter cannot be found that accepts argument 
'Update\RebootRequired'. 
At line:1 char:8 
+ $key = Get-Item 
HKLM:SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Aut ... 
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
~~~ 
    + CategoryInfo   : InvalidArgument: (:) [Get-Item], ParameterBindin 
    gException 
    + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell 
    .Commands.GetItemCommand 

"コマンドプロンプト"でこのコマンドを実行しています。それが何を意味するかわからない!

+0

ちょっとあなた自身の質問に答えるために、さらにはそれを受け入れることを完全に受け入れている –

+1

を ".RebootPending(起動-WmiMethod -namespaceルート\ CCM \ clientsdk -Class CCM_ClientUtilities -Name DetermineIfRebootPending)" の回答 PowerShellを得ました。あなたのコメントを適切な回答として追加することを検討してください - 将来的に他の人を助けるかもしれません。 – David

+0

[C#:Windows 7で必要な再起動を検出する方法](https://stackoverflow.com/questions/15482174/c-how-can-a-required-reboot-be-detected-for-windows) -7) – TheIncorrigible1

答えて

2

基本的にあなたが使用することができますTest-Pathです。このキーは、保留中の再起動がある場合にのみ存在します。

Test-Path "HKLM:\SOFTWARE­\Microsoft­\Windows­\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired" 
1

いくつかのこと:

  1. あなたの構文を使用して、CMDからのPowerShellコマンドを実行する場合、それはこのように見えるように持って正しくありませんでした:

    たpowershell.exeは、「get-項目"HKLM:ソフトウェア\ Microsoft \ Windows \ CurrentVersion \ WindowsUpdate \ Auto Update \ RebootRequired" "

  2. 少なくとも私にとって、RebootRequiredという項目/キーは存在しません。次のより高い経路Get-Item "HKLM:SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Updateは、キーとregエントリに保存された値は "RebootRequired"ではありませんが、このKeyは存在していますか?

  3. あなたは私のマシン上で動作するようには思えませんが、質問への答えは、代わりに自分のコメントの答えとして、それを投稿してください見つけたら...

+1

番号3.質問のコメントでなければなりません。それは答えの一部ではありません。 – Matt

関連する問題