PowerShellTab-objektet

PowerShellTab-objektet representerar en Windows PowerShell körningsmiljö.

Metoder

Invoke( Script )

Stöds i Windows PowerShell ISE 2.0 och senare.

Kör det angivna skriptet på PowerShell-fliken.

Anteckning

Den här metoden fungerar bara på andra PowerShell-flikar, inte på fliken PowerShell som den körs från. Det returnerar inte något objekt eller värde. Om koden ändrar en variabel sparas ändringarna på fliken som kommandot anropades mot.

Script – System.Management.Automation.ScriptBlock eller String Skriptblocket som ska köras.

# Manually create a second PowerShell tab before running this script.
# Return to the first PowerShell tab and type the following command
$psISE.PowerShellTabs[1].Invoke({dir})

InvokeSynchronous( Script, [useNewScope], millisekunderTimeout )

Stöds i Windows PowerShell ISE 3.0 och senare och finns inte i tidigare versioner.

Kör det angivna skriptet på PowerShell-fliken.

Anteckning

Den här metoden fungerar bara på andra PowerShell-flikar, inte på fliken PowerShell som den körs från. Skriptblocket körs och alla värden som returneras från skriptet returneras till körningsmiljön som du anropade kommandot från. Om kommandot tar längre tid att köra än vad som anges i millesecondsTimeout-värdet misslyckas kommandot med ett undantag: "Åtgärden har överskridit tidsgränsen."

Script – System.Management.Automation.ScriptBlock eller String Skriptblocket som ska köras.

[useNewScope] – Valfritt booleskt värde som standardvärdet $true Om inställt på $true, skapas ett nytt omfång där kommandot ska köras. Den ändrar inte körningsmiljön på fliken PowerShell som anges av kommandot .

[millisekunderTimeout] – Valfritt heltal som standard är 500. Om kommandot inte slutförs inom den angivna tiden genererar kommandot en TimeoutException med meddelandet "Åtgärden har överskriden tidsgräns".

# Create a new PowerShell tab and then switch back to the first
$psISE.PowerShellTabs.Add()
$psISE.PowerShellTabs.SetSelectedPowerShellTab($psISE.PowerShellTabs[0])

# Invoke a simple command on the other tab, in its own scope
$psISE.PowerShellTabs[1].InvokeSynchronous('$x=1', $false)
# You can switch to the other tab and type '$x' to see that the value is saved there.

# This example sets a value in the other tab (in a different scope)
# and returns it through the pipeline to this tab to store in $a
$a = $psISE.PowerShellTabs[1].InvokeSynchronous('$z=3;$z')
$a

# This example runs a command that takes longer than the allowed timeout value
# and measures how long it runs so that you can see the impact
Measure-Command {$psISE.PowerShellTabs[1].InvokeSynchronous('sleep 10', $false, 5000)}

Egenskaper

AddOnsMenu

Stöds i Windows PowerShell ISE 2.0 och senare.

Den skrivskyddade egenskapen som hämtar tilläggsmenyn för PowerShell-fliken.

# Clear the Add-ons menu if one exists.
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Clear()
# Create an AddOns menu with an accessor.
# Note the use of "_"  as opposed to the "&" for mapping to the fast key letter for the menu item.
$menuAdded = $psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add('_Process', {Get-Process}, 'Alt+P')
# Add a nested menu.
$parentAdded = $psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add('Parent', $null, $null)
$parentAdded.SubMenus.Add('_Dir', {dir}, 'Alt+D')
# Show the Add-ons menu on the current PowerShell tab.
$psISE.CurrentPowerShellTab.AddOnsMenu

CanInvoke

Stöds i Windows PowerShell ISE 2.0 och senare.

Den skrivskyddade booleska egenskapen som returnerar ett $true värde om ett skript kan anropas med metoden Invoke( Script ).

# CanInvoke will be false if the PowerShell
# tab is running a script that takes a while, and you
# check its properties from another PowerShell tab. It is
# always false if checked on the current PowerShell tab.
# Manually create a second PowerShell tab before running this script.
# Return to the first tab and type
$secondTab = $psISE.PowerShellTabs[1]
$secondTab.CanInvoke
$secondTab.Invoke({sleep 20})
$secondTab.CanInvoke

Konsolfönster

Stöds i Windows PowerShell ISE 3.0 och senare och finns inte i tidigare versioner. I Windows PowerShell ISE 2.0 hette detta CommandPane.

Den skrivskyddade egenskapen som hämtar konsolfönstrets redigeringsobjekt .

# Gets the Console Pane editor.
$psISE.CurrentPowerShellTab.ConsolePane

DisplayName

Stöds i Windows PowerShell ISE 2.0 och senare.

Den skrivskyddade egenskapen som hämtar eller anger den text som visas på PowerShell-fliken. Som standard heter flikarna "PowerShell #", där # representerar ett tal.

$newTab = $psISE.PowerShellTabs.Add()
# Change the DisplayName of the new PowerShell tab.
$newTab.DisplayName = 'Brand New Tab'

ExpandedScript

Stöds i Windows PowerShell ISE 2.0 och senare.

Den booleska läs-/skriv-egenskapen som avgör om fönstret Skript är expanderat eller dolt.

# Toggle the expanded script property to see its effect.
$psISE.CurrentPowerShellTab.ExpandedScript = !$psISE.CurrentPowerShellTab.ExpandedScript

Filer

Stöds i Windows PowerShell ISE 2.0 och senare.

Den skrivskyddade egenskapen som hämtar samlingen med skriptfiler som är öppna på PowerShell-fliken.

$newFile = $psISE.CurrentPowerShellTab.Files.Add()
$newFile.Editor.Text = "a`r`nb"
# Gets the line count
$newFile.Editor.LineCount

Utdata

Den här funktionen finns i Windows PowerShell ISE 2.0, men har tagits bort eller bytt namn i senare versioner av ISE. I senare versioner av Windows PowerShell ISE kan du använda ConsolePane-objektet för samma ändamål.

Den skrivskyddade egenskapen som hämtar fönstret Utdata i den aktuella redigeraren.

# Clears the text in the Output pane.
$psISE.CurrentPowerShellTab.output.clear()

Prompt

Stöds i Windows PowerShell ISE 2.0 och senare.

Den skrivskyddade egenskapen som hämtar den aktuella prompttexten. Obs! Prompt-funktionen kan åsidosättas av användarens ™profil. Om resultatet är annat än en enkel sträng returnerar den här egenskapen ingenting.

# Gets the current prompt text.
$psISE.CurrentPowerShellTab.Prompt

Visakommandon

Stöds i Windows PowerShell ISE 3.0 och senare och finns inte i tidigare versioner.

Den skrivskyddade egenskapen som anger om fönstret Kommandon visas för närvarande.

# Gets the current status of the Commands pane and stores it in the $a variable
$a = $psISE.CurrentPowerShellTab.ShowCommands
# if $a is $false, then turn the Commands pane on by changing the value to $true
if (!$a) {$psISE.CurrentPowerShellTab.ShowCommands = $true}

StatusText

Stöds i Windows PowerShell ISE 2.0 och senare.

Den skrivskyddade egenskapen som hämtar statustexten för PowerShellTab .

# Gets the current status text,
$psISE.CurrentPowerShellTab.StatusText

HorizontalAddOnToolsPaneOpened

Stöds i Windows PowerShell ISE 3.0 och senare och finns inte i tidigare versioner.

Den skrivskyddade egenskapen som anger om det vågräta Add-Ons verktygsfönstret för närvarande är öppet.

# Gets the current state of the horizontal Add-ons tool pane.
$psISE.CurrentPowerShellTab.HorizontalAddOnToolsPaneOpened

VerticalAddOnToolsPaneOpened

Stöds i Windows PowerShell ISE 3.0 och senare och finns inte i tidigare versioner.

Den skrivskyddade egenskapen som anger om det lodräta Add-Ons verktygsfönstret för närvarande är öppet.

# Turns on the Commands pane
$psISE.CurrentPowerShellTab.ShowCommands = $true
# Gets the current state of the vertical Add-ons tool pane.
$psISE.CurrentPowerShellTab.HorizontalAddOnToolsPaneOpened

Se även