āĻāĻāĻžāϧāĻŋāĻ MS-SQL āϏāĻžāϰā§āĻāĻžāϰ⧠āĻŦā§āϝāĻžāĻāĻāĻĒ āĻĒāϰāĻŋāĻāĻžāϞāύāĻžāϰ āĻāύā§āϝ āĻāĻŽāĻžāϰ āύāĻŋāĻāϏā§āĻŦ āĻĒāĻĻā§āϧāϤāĻŋ āϤā§āϰāĻŋ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ, āĻāĻŽāĻŋ āĻĻā§āϰāĻŦāϰā§āϤ⧠āĻāϞā§āϰ āϏāĻŽāϝāĻŧ Powershell-āĻ āĻŽāĻžāύāĻā§āϞāĻŋ āĻĒāĻžāϏ āĻāϰāĻžāϰ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāĻŋ āĻ āϧā§āϝāϝāĻŧāύ āĻāϰāϤ⧠āĻ āύā§āĻ āϏāĻŽāϝāĻŧ āĻŦā§āϝāϝāĻŧ āĻāϰā§āĻāĻŋ, āϤāĻžāĻ āĻāĻāĻŋ āĻĻāϰāĻāĻžāϰ⧠āĻšāϞ⧠āĻāĻŽāĻŋ āύāĻŋāĻā§āĻā§ āĻāĻāĻāĻŋ āĻ āύā§āϏā§āĻŽāĻžāϰāĻ āϞāĻŋāĻāĻāĻŋ āĻ āύā§āϝ āĻāĻžāϰ⧠āĻāĻžāĻā§.
āϏā§āϤāϰāĻžāĻ, āĻāϏā§āύ āĻāĻāĻāĻŋ āϏāĻžāϧāĻžāϰāĻŖ āϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻĻāĻŋāϝāĻŧā§ āĻļā§āϰ⧠āĻāϰāĻŋ āĻāĻŦāĻ āĻāĻāĻŋ āϏā§āĻĨāĻžāύā§āϝāĻŧāĻāĻžāĻŦā§ āĻāĻžāϞāĻžāĻ:
$exitcode = $args[0]
Write-Host 'Out to host.'
Write-Output 'Out to output.'
Write-Host ('ExitCode: ' + $exitcode)
Write-Output $exitcode
$host.SetShouldExit($exitcode)āϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻāĻžāϞāĻžāύā§āϰ āĻāύā§āϝ, āĻāĻŽāĻŋ āύāĻŋāĻŽā§āύāϞāĻŋāĻāĻŋāϤ CMD āĻĢāĻžāĻāϞāĻāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻŦ, āĻāĻŽāĻŋ āĻāĻāĻŋ āĻĒā§āϰāϤāĻŋāĻŦāĻžāϰ āĻ āύā§āϤāϰā§āĻā§āĻā§āϤ āĻāϰāĻŦ āύāĻž:
@Echo OFF
PowerShell .TestOutput1.ps1 1
ECHO ERRORLEVEL=%ERRORLEVEL%āϏā§āĻā§āϰāĻŋāύ⧠āĻāĻŽāϰāĻž āύāĻŋāĻŽā§āύāϞāĻŋāĻāĻŋāϤāĻā§āϞāĻŋ āĻĻā§āĻāϤ⧠āĻĒāĻžāĻŦ:
Out to host.
Out to output.
ExitCode: 1
1
ERRORLEVEL=1
āĻāĻāύ WSMAN (āĻĻā§āϰāĻŦāϰā§āϤā§āĻāĻžāĻŦā§) āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻāĻāĻ āϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻāĻžāϞāĻžāύ⧠āϝāĻžāĻ:
Invoke-Command -ComputerName . -ScriptBlock { &'D:sqlagentTestOutput1.ps1' $args[0] } -ArgumentList $args[0]āĻāĻŦāĻ āĻāĻāĻžāύ⧠āĻāĻĒāύāĻžāϰ āĻāύā§āϝ āĻĢāϞāĻžāĻĢāϞ:
Out to host.
Out to output.
ExitCode: 2
2
ERRORLEVEL=0āĻā§āϰā§āĻ, Errorlevel āĻā§āĻĨāĻžāĻ āĻ āĻĻā§āĻļā§āϝ āĻšāϝāĻŧā§ āĻā§āĻā§, āĻāĻŋāύā§āϤ⧠āĻāĻŽāĻžāĻĻā§āϰ āϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻĨā§āĻā§ āĻŽāĻžāύ āĻĒā§āϤ⧠āĻšāĻŦā§! āĻāϏā§āύ āύāĻŋāĻŽā§āύāϞāĻŋāĻāĻŋāϤ āύāĻāĻļāĻž āĻā§āώā§āĻāĻž āĻāϰā§āύ:
$res=Invoke-Command -ComputerName . -ScriptBlock { &'D:sqlagentTestOutput1.ps1' $args[0] } -ArgumentList $args[0]āĻāĻāĻŋ āĻāϰāĻ āĻāĻāϰā§āώāĻŖā§āϝāĻŧāĨ¤ āĻāĻāĻāĻĒā§āĻā§ āĻŦāĻžāϰā§āϤāĻžāĻāĻŋ āĻā§āĻĨāĻžāĻ āĻ āĻĻā§āĻļā§āϝ āĻšāϝāĻŧā§ āĻā§āĻā§:
Out to host.
ExitCode: 2
ERRORLEVEL=0āĻāĻāύ, āĻāĻāĻāĻŋ āϞāĻŋāϰāĻŋāĻā§āϝāĻžāϞ āĻĄāĻŋāĻā§āϰā§āĻļāύ āĻšāĻŋāϏāĻžāĻŦā§, āĻāĻŽāĻŋ āϞāĻā§āώā§āϝ āĻāϰāĻŦ āϝ⧠āϝāĻĻāĻŋ āĻāĻāĻāĻŋ āĻĒāĻžāĻāϝāĻŧāĻžāϰāĻļā§āϞ āĻĢāĻžāĻāĻļāύā§āϰ āĻāĻŋāϤāϰ⧠āĻāĻĒāύāĻŋ āϞāĻŋāĻā§āύ-āĻāĻāĻāĻĒā§āĻ āĻŦāĻž āĻļā§āϧā§āĻŽāĻžāϤā§āϰ āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āϝāĻā§āϤāĻŋ āϞāĻŋāĻā§āύ āϝā§āĻāĻŋ āĻā§āύ⧠āĻā§āϰāĻŋāϝāĻŧā§āĻŦāϞā§āϰ āϏāĻžāĻĨā§ āĻŦāϰāĻžāĻĻā§āĻĻ āύāĻž āĻāϰ⧠(āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻāĻāĻĒā§āĻ āĻā§āϝāĻžāύā§āϞ⧠āĻāĻāĻāĻĒā§āĻāĻā§ āĻŦā§āĻāĻžāϝāĻŧ), āϤāĻžāϰāĻĒāϰāĻ āϏā§āĻĨāĻžāύā§āϝāĻŧāĻāĻžāĻŦā§ āĻāĻžāϞāĻžāύā§āϰ āϏāĻŽāϝāĻŧāĻ, āĻāĻŋāĻā§āĻ āĻĒāϰā§āĻĻāĻžāϝāĻŧ āĻĒā§āϰāĻĻāϰā§āĻļāĻŋāϤ āĻšāĻŦā§ āύāĻž! āĻāĻāĻŋ āĻĒāĻžāĻāϝāĻŧāĻžāϰāĻļā§āϞ āĻĒāĻžāĻāĻĒāϞāĻžāĻāύ āĻāϰā§āĻāĻŋāĻā§āĻāĻāĻžāϰā§āϰ āĻāĻāĻāĻŋ āĻĒāϰāĻŋāĻŖāϤāĻŋ - āĻĒā§āϰāϤāĻŋāĻāĻŋ āĻĢāĻžāĻāĻļāύā§āϰ āύāĻŋāĻāϏā§āĻŦ āĻāĻāĻāĻĒā§āĻ āĻĒāĻžāĻāĻĒāϞāĻžāĻāύ āĻĨāĻžāĻā§, āĻāĻāĻŋāϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āĻ ā§āϝāĻžāϰ⧠āϤā§āϰāĻŋ āĻāϰāĻž āĻšāϝāĻŧ āĻāĻŦāĻ āĻāϤ⧠āϝāĻž āĻāĻŋāĻā§ āϝāĻžāϝāĻŧ āϤāĻž āĻĢāĻžāĻāĻļāύ āϏāĻŽā§āĻĒāĻžāĻĻāύā§āϰ āĻĢāϞāĻžāĻĢāϞ āĻšāĻŋāϏāĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻŋāϤ āĻšāϝāĻŧ, āϰāĻŋāĻāĻžāϰā§āύ āĻ āĻĒāĻžāϰā§āĻāϰ āĻāĻāĻ āϏāĻžāĻĨā§ āϰāĻŋāĻāĻžāϰā§āύ āĻŽāĻžāύ āϝā§āĻ āĻāϰ⧠āĻĒāĻžāĻāĻĒāϞāĻžāĻāύ āĻļā§āώ āĻāĻĒāĻžāĻĻāĻžāύ āĻšāĻŋāϏāĻžāĻŦā§ āĻāĻŦāĻ āĻāϞāĻŋāĻ āĻĢāĻžāĻāĻļāύ⧠āύāĻŋāϝāĻŧāύā§āϤā§āϰāĻŖ āϏā§āĻĨāĻžāύāĻžāύā§āϤāϰ āĻāϰā§āĨ¤ āĻŦā§āϝāĻžāĻā§āϝāĻž āĻāϰāĻžāϰ āĻāύā§āϝ, āĻāϏā§āύ āϏā§āĻĨāĻžāύā§āϝāĻŧāĻāĻžāĻŦā§ āύāĻŋāĻŽā§āύāϞāĻŋāĻāĻŋāϤ āϏā§āĻā§āϰāĻŋāĻĒā§āĻāĻāĻŋ āĻāĻžāϞāĻžāĻ:
Function Write-Log {
Param( [Parameter(Mandatory=$false, ValueFromPipeline=$true)] [String[]] $OutString = "`r`n" )
Write-Output ("Function: "+$OutString)
Return "ReturnValue"
}
Write-Output ("Main: "+"ParameterValue")
$res = Write-Log "ParameterValue"
$res.GetType()
$res.Length
$res | Foreach-Object { Write-Host ("Main: "+$_) }
āĻāĻŦāĻ āĻāĻāĻžāύ⧠āĻĢāϞāĻžāĻĢāϞ:
Main: ParameterValue
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
2
Main: Function: ParameterValue
Main: ReturnValueāĻĒā§āϰāϧāĻžāύ āĻĢāĻžāĻāĻļāύ (āϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻŦāĻĄāĻŋ) āĻāϰ āύāĻŋāĻāϏā§āĻŦ āĻāĻāĻāĻĒā§āĻ āĻĒāĻžāĻāĻĒāϞāĻžāĻāύ āϰāϝāĻŧā§āĻā§ āĻāĻŦāĻ āϝāĻĻāĻŋ āĻāĻŽāϰāĻž āϏāĻŋāĻāĻŽāĻĄāĻŋ āĻĨā§āĻā§ āĻĒā§āϰāĻĨāĻŽ āϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻāĻžāϞāĻžāĻ, āĻāĻāĻāĻĒā§āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāϞ⧠āĻĒā§āύāĻāύāĻŋāϰā§āĻĻā§āĻļ āĻāϰā§,
PowerShell .TestOutput1.ps1 1 > TestOutput1.txt
āϤāĻžāϰāĻĒāϰ āĻāĻŽāϰāĻž āĻĒāϰā§āĻĻāĻžāϝāĻŧ āĻĻā§āĻāϤ⧠āĻĒāĻžāĻŦ
ERRORLEVEL=1āĻāĻŦāĻ āĻĢāĻžāĻāϞā§
Out to host.
Out to output.
ExitCode: 1
1
āϝāĻĻāĻŋ āĻāĻŽāϰāĻž āĻĒāĻžāĻāϝāĻŧāĻžāϰāĻļā§āϞ āĻĨā§āĻā§ āĻ āύā§āϰā§āĻĒ āĻāϞ āĻāϰāĻŋ
PS D:sqlagent> .TestOutput1.ps1 1 > TestOutput1.txtāϤāĻžāϰāĻĒāϰ āĻāĻāĻŋ āĻĒāϰā§āĻĻāĻžāϝāĻŧ āĻšāĻŦā§
Out to host.
ExitCode: 1āĻāĻŦāĻ āĻĢāĻžāĻāϞā§
Out to output.
1āĻāĻāĻŋ āĻāĻā§ āĻāĻžāϰāĻŖ āϏāĻŋāĻāĻŽāĻĄāĻŋ āĻĒāĻžāĻāϝāĻŧāĻžāϰāĻļā§āϞ āĻāĻžāϞ⧠āĻāϰā§, āϝāĻž āĻ āύā§āϝāĻžāύā§āϝ āύāĻŋāϰā§āĻĻā§āĻļāĻžāĻŦāϞā§āϰ āĻ āύā§āĻĒāϏā§āĻĨāĻŋāϤāĻŋāϤ⧠āĻĻā§āĻāĻŋ āĻĨā§āϰā§āĻĄ (āĻšā§āϏā§āĻ āĻāĻŦāĻ āĻāĻāĻāĻĒā§āĻ) āĻŽāĻŋāĻļā§āϰāĻŋāϤ āĻāϰ⧠āĻāĻŦāĻ āϏā§āĻā§āϞāĻŋ āϏāĻŋāĻāĻŽāĻĄāĻŋāĻā§ āĻĻā§āϝāĻŧ, āϝāĻž āĻāĻāĻŋ āĻĒā§āϰāĻžāĻĒā§āϤ āϏāĻŽāϏā§āϤ āĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāϞ⧠āĻĒāĻžāĻ āĻžāϝāĻŧ āĻāĻŦāĻ āĻĒāĻžāĻāϝāĻŧāĻžāϰāĻļā§āϞ āĻĨā§āĻā§ āĻāĻžāϞ⧠āĻāϰāĻžāϰ āĻā§āώā§āϤā§āϰā§, āĻāĻ āĻĻā§āĻāĻŋ āĻĨā§āϰā§āĻĄ āĻāϞāĻžāĻĻāĻžāĻāĻžāĻŦā§ āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ, āĻāĻŦāĻ āĻĒā§āϰāϤā§āĻ āĻĒā§āύāĻāύāĻŋāϰā§āĻĻā§āĻļ āĻļā§āϧā§āĻŽāĻžāϤā§āϰ āĻāĻāĻāĻĒā§āĻāĻā§ āĻĒā§āϰāĻāĻžāĻŦāĻŋāϤ āĻāϰā§āĨ¤
āĻŽā§āϞ āĻŦāĻŋāώāϝāĻŧā§ āĻĢāĻŋāϰ⧠āĻāϏāĻž, āĻāĻŽāĻžāĻĻā§āϰ āĻŽāύ⧠āϰāĻžāĻāĻž āϝāĻžāĻ āϝ⧠āĻĒāĻžāĻāϝāĻŧāĻžāϰāĻļā§āϞā§āϰ āĻāĻŋāϤāϰ⧠.NET āĻ āĻŦāĻā§āĻā§āĻ āĻŽāĻĄā§āϞāĻāĻŋ āϏāĻŽā§āĻĒā§āϰā§āĻŖāϰā§āĻĒā§ āĻāĻāĻāĻŋ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰā§āϰ āĻŽāϧā§āϝ⧠āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ (āĻāĻāĻāĻŋ āĻāĻāϏ), āϝāĻāύ WSMAN-āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻĻā§āϰāĻŦāϰā§āϤā§āĻāĻžāĻŦā§ āĻā§āĻĄ āĻāĻžāϞāĻžāύ⧠āĻšāϝāĻŧ, āϤāĻāύ XML āϏāĻŋāϰāĻŋāϝāĻŧāĻžāϞāĻžāĻāĻā§āĻļāύā§āϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻŦāϏā§āϤā§āϰ āϏā§āĻĨāĻžāύāĻžāύā§āϤāϰ āĻāĻā§, āϝāĻž āĻ āύā§āĻ āĻ āϤāĻŋāϰāĻŋāĻā§āϤ āĻāĻā§āϰāĻš āύāĻŋāϝāĻŧā§ āĻāϏā§āĨ¤ āĻāĻŽāĻžāĻĻā§āϰ āĻāĻŦā§āώāĻŖāĻžāϝāĻŧāĨ¤ āĻāϏā§āύ āύāĻŋāĻŽā§āύāϞāĻŋāĻāĻŋāϤ āĻā§āĻĄāĻāĻŋ āĻāĻžāϞāĻŋāϝāĻŧā§ āĻāĻŽāĻžāĻĻā§āϰ āĻĒāϰā§āĻā§āώāĻžāĻā§āϞāĻŋ āĻāĻžāϞāĻŋāϝāĻŧā§ āϝāĻžāĻ:
$res=Invoke-Command -ComputerName . -ScriptBlock { &'D:sqlagentTestOutput1.ps1' $args[0] } -ArgumentList $args[0]
$res.GetType()
$host.SetShouldExit($res)
āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āϰ āĻĒāϰā§āĻĻāĻžāϝāĻŧ āϰāϝāĻŧā§āĻā§:
Out to host.
ExitCode: 3
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
ĐĐĩ ŅдаĐĩŅŅŅ ĐŋŅĐĩОйŅаСОваŅŅ Đ°ŅĐŗŅĐŧĐĩĐŊŅ "exitCode", ŅĐž СĐŊаŅĐĩĐŊиĐĩĐŧ: "System.Object[]", Đ´ĐģŅ "SetShouldExit" в ŅиĐŋ "System.Int32": "ĐĐĩ ŅдаĐĩŅŅŅ ĐŋŅĐĩОйŅаСОваŅŅ ĐˇĐŊаŅĐĩĐŊиĐĩ "System.Object[]" ŅиĐŋа "System.Object[]" в ŅиĐŋ "System
.Int32"."
D:sqlagentTestOutput3.ps1:3 СĐŊаĐē:1
+ $host.SetShouldExit($res)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodException
+ FullyQualifiedErrorId : MethodArgumentConversionInvalidCastArgument
ERRORLEVEL=0āĻĻā§āϰā§āĻĻāĻžāύā§āϤ āĻĢāϞāĻžāĻĢāϞ! āĻāϰ āĻŽāĻžāύ⧠āĻšāϞ āĻāύāĻā§āĻ-āĻāĻŽāĻžāύā§āĻĄ āĻāϞ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ, āĻĒāĻžāĻāĻĒāϞāĻžāĻāύāĻā§āϞāĻŋāϰ āĻĻā§āĻāĻŋ āĻĨā§āϰā§āĻĄā§ (āĻšā§āϏā§āĻ āĻāĻŦāĻ āĻāĻāĻāĻĒā§āĻ) āĻŦāĻŋāĻāĻžāĻāύ āĻŦāĻāĻžāϝāĻŧ āϰāĻžāĻāĻž āĻšāϝāĻŧ, āϝāĻž āĻāĻŽāĻžāĻĻā§āϰ āϏāĻžāĻĢāϞā§āϝā§āϰ āĻāĻļāĻž āĻĻā§āϝāĻŧāĨ¤ āĻāϏā§āύ āĻāĻāĻāĻĒā§āĻ āϏā§āĻā§āϰā§āĻŽā§ āĻļā§āϧā§āĻŽāĻžāϤā§āϰ āĻāĻāĻāĻŋ āĻŽāĻžāύ āĻā§āĻĄāĻŧā§ āĻĻā§āĻāϝāĻŧāĻžāϰ āĻā§āώā§āĻāĻž āĻāϰāĻŋ, āϝāĻžāϰ āĻāύā§āϝ āĻāĻŽāϰāĻž āĻĻā§āϰāĻŦāϰā§āϤā§āĻāĻžāĻŦā§ āĻāĻžāϞāĻžāύ⧠āĻĒā§āϰāĻĨāĻŽ āϏā§āĻā§āϰāĻŋāĻĒā§āĻāĻāĻŋ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻāϰāĻŦ:
$exitcode = $args[0]
Write-Host 'Out to host.'
#Write-Output 'Out to output.'
Write-Host ('ExitCode: ' + $exitcode)
Write-Output $exitcode
$host.SetShouldExit($exitcode)
āĻāϏā§āύ āĻāĻāĻŋ āĻāĻāĻžāĻŦā§ āĻāĻžāϞāĻžāĻ:
$res=Invoke-Command -ComputerName . -ScriptBlock { &'D:sqlagentTestOutput1.ps1' $args[0] } -ArgumentList $args[0]
$host.SetShouldExit($res)
āĻāĻŦāĻ... āĻšā§āϝāĻžāĻ, āĻāĻāĻž āĻāĻāĻāĻž āĻŦāĻŋāĻāϝāĻŧā§āϰ āĻŽāϤ āĻŽāύ⧠āĻšāĻā§āĻā§!
Out to host.
ExitCode: 4
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Int32 System.ValueType
ERRORLEVEL=4āĻāĻŋ āĻāĻā§āĻā§ āϤāĻž āĻŦā§āϰ āĻāϰāĻžāϰ āĻā§āώā§āĻāĻž āĻāϰāĻž āϝāĻžāĻāĨ¤ āĻāĻŽāϰāĻž āϏā§āĻĨāĻžāύā§āϝāĻŧāĻāĻžāĻŦā§ āĻĒāĻžāĻāϝāĻŧāĻžāϰāĻļā§āϞāĻā§ āĻāϞ āĻāϰā§āĻāĻŋāϞāĻžāĻŽ, āϝāĻž āϰāĻŋāĻŽā§āĻ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰ⧠āĻĒāĻžāĻāϝāĻŧāĻžāϰāĻļā§āϞāĻā§ āĻāϞ āĻāϰ⧠āĻāĻŦāĻ āϏā§āĻāĻžāύ⧠āĻāĻŽāĻžāĻĻā§āϰ āϏā§āĻā§āϰāĻŋāĻĒā§āĻāĻāĻŋ āĻāĻžāϰā§āϝāĻāϰ āĻāϰā§āĨ¤ āϰāĻŋāĻŽā§āĻ āĻŽā§āĻļāĻŋāύ āĻĨā§āĻā§ āĻĻā§āĻāĻŋ āϏā§āĻā§āϰā§āĻŽ (āĻšā§āϏā§āĻ āĻāĻŦāĻ āĻāĻāĻāĻĒā§āĻ) āϏāĻŋāϰāĻŋāϝāĻŧāĻžāϞāĻžāĻāĻ āĻāϰāĻž āĻšāϝāĻŧā§āĻāĻŋāϞ āĻāĻŦāĻ āĻĒāĻŋāĻāύ⧠āĻĒāĻžāϏ āĻāϰāĻž āĻšāϝāĻŧā§āĻāĻŋāϞ, āϝāĻāύ āĻāĻāĻāĻĒā§āĻ āϏā§āĻā§āϰā§āĻŽ, āĻāϤ⧠āĻāĻāĻāĻŋ āĻāĻāĻ āĻĄāĻŋāĻāĻŋāĻāĻžāϞ āĻŽāĻžāύ āϰāϝāĻŧā§āĻā§, āĻāĻžāĻāĻĒ Int32 āϤ⧠āϰā§āĻĒāĻžāύā§āϤāϰāĻŋāϤ āĻšāϝāĻŧā§āĻāĻŋāϞ āĻāĻŦāĻ āĻāĻāĻāĻžāĻŦā§ āĻĒā§āϰāĻžāĻĒā§āϤāĻŋāϰ āĻĻāĻŋāĻā§ āĻāϞ⧠āĻāĻŋāϝāĻŧā§āĻāĻŋāϞ āĻāĻŦāĻ āĻā§āϰāĻšāĻŖāĻāĻžāϰ⧠āĻĒāĻā§āώ āĻāĻāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āĻāĻŋāϞāĨ¤ āĻāϞāĻžāϰ āĻĒāĻžāĻāϝāĻŧāĻžāϰāĻļā§āϞā§āϰ āĻĒā§āϰāϏā§āĻĨāĻžāύ āĻā§āĻĄ āĻšāĻŋāϏāĻžāĻŦā§āĨ¤
āĻāĻŦāĻ āĻā§āĻĄāĻŧāĻžāύā§āϤ āĻĒāϰā§āĻā§āώāĻž āĻšāĻŋāϏā§āĻŦā§, āϤā§āϰāĻŋ āĻāϰāĻž āϝāĻžāĻ āϏāĻžāϰā§āĻāĻžāϰ "āĻ āĻĒāĻžāϰā§āĻāĻŋāĻ āϏāĻŋāϏā§āĻā§āĻŽ (cmdexec)" āϧāϰāĻŖā§āϰ āĻāĻāĻāĻŋ āĻāĻāĻ-āĻĒāĻĻāĻā§āώā§āĻĒ SQL āĻāĻžāϏā§āĻ āϝāĻžāϰ āϞā§āĻāĻžāĻāĻŋ āύāĻŋāĻŽā§āύā§āĻā§āϤ:
PowerShell -NonInteractive -NoProfile "$res=Invoke-Command -ComputerName BACKUPSERVER -ConfigurationName SQLAgent -ScriptBlock {&'D:sqlagentTestOutput1.ps1' 6}; $host.SetShouldExit($res)"āĻšā§āϰāϰā§! āĻāĻāĻāĻŋ āϤā§āϰā§āĻāĻŋāϰ āϏāĻžāĻĨā§ āĻāĻžāĻāĻāĻŋ āϏāĻŽā§āĻĒāύā§āύ āĻšāϝāĻŧā§āĻā§, āϞāĻā§ āĻĒāĻžāĻ ā§āϝ:
ĐŅĐŋĐžĐģĐŊŅĐĩŅŅŅ ĐžŅ Đ¸ĐŧĐĩĐŊи ĐŋĐžĐģŅСОваŅĐĩĐģŅ: DOMAINagentuser. Out to host. ExitCode: 6. ĐОд СавĐĩŅŅĐĩĐŊĐ¸Ņ ĐŋŅĐžŅĐĩŅŅа 6. Đ¨Đ°Đŗ СавĐĩŅŅиĐģŅŅ Ņ ĐžŅийĐēОК.
āϏāĻŋāĻĻā§āϧāĻžāύā§āϤā§:
- āϞāĻŋāĻā§āύ-āĻāĻāĻāĻĒā§āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āĻāĻĄāĻŧāĻŋāϝāĻŧā§ āĻāϞā§āύ āĻāĻŦāĻ āĻ ā§āϝāĻžāϏāĻžāĻāύāĻŽā§āύā§āĻ āĻāĻžāĻĄāĻŧāĻž āĻāĻā§āϏāĻĒā§āϰā§āĻļāύ āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻāϰā§āύāĨ¤ āϏāĻā§āϤāύ āĻĨāĻžāĻā§āύ āϝ⧠āĻāĻ āĻā§āĻĄāĻāĻŋ āϏā§āĻā§āϰāĻŋāĻĒā§āĻā§āϰ āĻ āύā§āϝ āĻā§āĻĨāĻžāĻ āϏāϰāĻžāύ⧠āĻšāϞ⧠āĻ āĻĒā§āϰāϤā§āϝāĻžāĻļāĻŋāϤ āĻĢāϞāĻžāĻĢāϞ āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤
- āĻŽā§āϝāĻžāύā§āϝāĻŧāĻžāϞ āϞāĻā§āĻā§āϰ āĻāύā§āϝ āύāϝāĻŧ, āĻāĻŋāύā§āϤ⧠āĻāĻĒāύāĻžāϰ āĻ āĻā§āĻŽā§āĻļāύ āĻŽā§āĻāĻžāύāĻŋāĻāĻŽāĻā§āϞāĻŋāϤ⧠āĻŦā§āϝāĻŦāĻšāĻžāϰā§āϰ āĻāύā§āϝ āĻŦāĻŋāĻļā§āώāϤ WINRM-āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻĻā§āϰāĻŦāϰā§āϤ⧠āĻāϞāĻā§āϞāĻŋāϰ āĻāύā§āϝ āϏā§āĻā§āϰāĻŋāĻĒā§āĻāĻā§āϞāĻŋāϤā§, āĻā§āώā§āĻāĻž āĻāϰā§āύ/āĻā§āϝāĻžāĻā§āϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻŽā§āϝāĻžāύā§āϝāĻŧāĻžāϞ āϤā§āϰā§āĻāĻŋ āĻĒāϰāĻŋāĻāĻžāϞāύāĻž āĻāϰā§āύ āĻāĻŦāĻ āύāĻŋāĻļā§āĻāĻŋāϤ āĻāϰā§āύ āϝā§, āĻāĻā§āύā§āĻā§āϰ āϝā§āĻā§āύ⧠āĻŦāĻŋāĻāĻžāĻļā§, āĻāĻ āϏā§āĻā§āϰāĻŋāĻĒā§āĻāĻāĻŋ āĻ āĻŋāĻ āĻāĻāĻāĻŋ āĻāĻĻāĻŋāĻŽ āϧāϰāύā§āϰ āĻŽāĻžāύ āĻĒāĻžāĻ āĻžāϝāĻŧāĨ¤ . āĻāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻā§āϞāĻžāϏāĻŋāĻ āϤā§āϰā§āĻāĻŋāϰ āϏā§āϤāϰ āĻĒā§āϤ⧠āĻāĻžāύ āϤāĻŦā§ āĻāĻ āĻŽāĻžāύāĻāĻŋ āĻ āĻŦāĻļā§āϝāĻ āϏāĻžāĻāĻā§āϝāĻŋāĻ āĻšāϤ⧠āĻšāĻŦā§āĨ¤
āĻāϤā§āϏ: www.habr.com
