1
私はpowershellで仕事をしてサービスを開始/停止しようとしています。ローカルマシンでこれをテストすると、ジョブは完了した状態になりますが、サービスの状態は変わりません。私の仕事がどんなことをしたのかをより良く理解する方法はありますか?私はそのスニペットを実行したときPowershellの仕事は完了しましたが、仕事は終了していません
$service = 'MSSQL$SQLEXPRESS'
$server = 'myPC'
$myJob = Start-Job -Scriptblock {Get-Service -Name $args[0] -computername $args[1] | Set-Service -Status Running} -ArgumentList @($service,$server)
sleep -Seconds 10
get-job
SQL SQL(EXPRESS)サービスが起動しない:ここでは
はコードです。私は高架シェルから以下を実行した場合は、それが起動します:
Get-Service -Name $service -computername $server | Set-Service -Status Running
私が取得 - ジョブを実行すると、ここで私が見たものである...
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
10 Job10 BackgroundJob Completed True localhost Get-Service -Name $arg...
これらのどちらも高いシェルから実行されているので、私はサービスを開始/停止する権限があります。
ありがとう!私の問題は「get-service:コンピュータ上でService Control Managerを開くことができませんでした。この操作には他の 権限が必要な場合があります。このようなエラーでジョブがまだ完了した状態になるのは不思議です。しかし、答えをありがとう! – Christopher