Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Krátký popis
Popisuje inlinescript aktivitu, která spouští příkazy PowerShellu v pracovním postupu.
Dlouhý popis
Aktivita inlinescript spouští příkazy v pracovním postupu sdílené relace PowerShellu.
inlinescript je platný pouze v pracovních postupech.
Syntaxe
inlinescript {<script block>} <ActivityCommonParameters>
Podrobný popis
Aktivita inlinescript spouští příkazy ve sdílené relaci PowerShellu. Můžete ho zahrnout do pracovního postupu a spouštět příkazy, které sdílejí data a příkazy, které nejsou v pracovním postupu jinak platné.
Blok inlinescript skriptu může obsahovat všechny platné příkazy a výrazy PowerShellu. Vzhledem k tomu, že příkazy a výrazy v bloku skriptu běží ve inlinescript stejné relaci, sdílejí všechny stavy a data, včetně importovaných modulů a hodnot proměnných.
Aktivitu inlinescript můžete umístit kdekoli v pracovním postupu nebo vnořeném pracovním postupu, včetně uvnitř smyčky nebo řídicího příkazu nebo parallel nebo sequence bloku skriptu.
Aktivita inlinescript má společné parametry aktivity, včetně PSPersist. Příkazy a výrazy v inlinescript bloku skriptu ale nemají funkce pracovního postupu, jako je vytváření kontrolních bodů nebo trvalost a běžné parametry pracovního postupu nebo aktivity. Další informace najdete v tématu about_ActivityCommonParameters.
Vložené proměnné jazykaScript
Ve výchozím nastavení nejsou proměnné definované v pracovním postupu viditelné pro příkazy v inlinescript bloku skriptu. K zobrazení inlinescriptproměnných pracovního postupu použijte Using: modifikátor oboru.
Using: Modifikátor oboru je vyžadován pouze jednou pro každou proměnnou v objektu inlinescript.
Další informace o modifikátoru Using: oboru najdete v tématu about_Remote_Variables.
Následující příklad ukazuje, že Using: modifikátor oboru zpřístupňuje hodnotu $a proměnné pracovního postupu nejvyšší úrovně pro příkazy v inlinescript bloku skriptu.
workflow Test-Workflow {
$a = 3
## Without $Using, the $a workflow variable isn't visible
## in inline script.
inlinescript {"Inline A0 = $a"}
## $Using imports the variable and its current value.
inlinescript {"Inline A1 = $Using:a"}
}
Test-Workflow
Inline A0 =
Inline A1 = 3
Vrácení proměnných v inlineScriptu
inlinescript Příkazy můžou změnit hodnotu proměnné, která byla importována z oboru pracovního postupu, ale změny nejsou viditelné v oboru pracovního postupu. Pokud je chcete zobrazit, vraťte změněnou hodnotu do oboru pracovního postupu, jak je znázorněno v následujícím příkladu.
workflow Test-Workflow {
$a = 3
## Changes to the inlinescript variable value don't
## change the workflow variable.
inlinescript {
$a = $Using:a+1;
"Inline A = $a"
}
"Workflow A = $a"
## To change the variable in workflow scope, return the
## new value.
$a = inlinescript {$b = $Using:a+1; $b}
"Workflow New A = $a"
}
Test-Workflow
Inline A = 4
Workflow A = 3
Workflow New A = 4
Poznámka:
Příkaz s modifikátorem Using: oboru by se měl zobrazit před použitím proměnné v inlinescript bloku skriptu.
Spuštění v procesu
Aby se zlepšila spolehlivost, příkazy v inlinescript bloku skriptu se spouští ve vlastním procesu, odděleně od procesu, ve kterém se pracovní postup spouští, a pak vrátí výstup do procesu pracovního postupu.
Pokud chcete nasměrovat PowerShell ke spuštění inlinescript aktivity v procesu pracovního postupu, odeberte inlinescript hodnotu z vlastnosti OutOfProcessActivity konfigurace relace, například pomocí rutiny New-PSWorkflowExecutionOption .
Příklad
Následující inlinescript pracovní postup obsahuje příkazy, které jsou platné v PowerShellu, ale nejsou platné v pracovních postupech. Například rutina New-Object s parametrem ComObject .
workflow Test-Workflow {
$ie = inlinescript {
$ie = New-Object -ComObject InternetExplorer.Application -Property @{navigate2="www.microsoft.com"}
$ie.Visible = $true
}
$ie
}
Test-Workflow