Compartilhar via


O objeto PowerShellTab

O objeto PowerShellTab representa um ambiente de runtime do Windows PowerShell.

Métodos

Invoke( Script )

Suportado no Windows PowerShell ISE 2.0 e posteriores.

Executa o script determinado na guia PowerShell.

Observação

Esse método só funciona em outras guias do PowerShell, não na guia do PowerShell do qual ele é executado. Ele não retorna nenhum objeto ou valor. Se o código modificar qualquer variável, essas alterações persistirão na guia na qual o comando foi invocado.

Script – System.Management.Automation.ScriptBlock ou Cadeia de caracteres, o bloco de script a ser executado.

# 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], millisecondsTimeout )

Com suporte no Windows PowerShell ISE 3.0 e posterior, não está presente em versões anteriores.

Executa o script determinado na guia PowerShell.

Observação

Esse método só funciona em outras guias do PowerShell, não na guia do PowerShell do qual ele é executado. O bloco de script é executado e qualquer valor que é devolvido do script é devolvido ao ambiente de execução do qual você invocou o comando. Se o comando demorar mais para executar do que o que estiver especificado no valor millisecondsTimeout, o comando falhará com uma exceção: “A operação alcançou o tempo limite.”

Script – System.Management.Automation.ScriptBlock ou Cadeia de caracteres, o bloco de script a ser executado.

[useNewScope] – booliano opcional cujo padrão é $true; se for definido como $true, será criado um novo escopo em que o comando será executado. Ele não modifica o ambiente de runtime da guia PowerShell que é especificada pelo comando.

[millisecondsTimeout] – inteiro opcional padronizado para 500. Se o comando não terminar dentro do tempo especificado, gerará um TimeoutException com a mensagem "A operação atingiu o tempo limite".

# 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)}

Propriedades

AddOnsMenu

Suportado no Windows PowerShell ISE 2.0 e posteriores.

A propriedade somente leitura que obtém o menu Complementos para a guia PowerShell.

# 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

Suportado no Windows PowerShell ISE 2.0 e posteriores.

A propriedade Boolean somente leitura que retornará um valor $true se um script puder ser invocado com o método 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

ConsolePane

Com suporte no Windows PowerShell ISE 3.0 e posterior, não está presente em versões anteriores. No ISE do Windows PowerShell 2.0 isso foi chamado de CommandPane.

A propriedade somente leitura que obtém o objeto editor do painel Console.

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

DisplayName

Suportado no Windows PowerShell ISE 2.0 e posteriores.

A propriedade de leitura/leitura que obtém ou define o texto exibido na guia PowerShell. Por padrão, as guias são denominadas "PowerShell #", em que # representa um número.

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

ExpandedScript

Suportado no Windows PowerShell ISE 2.0 e posteriores.

A propriedade Boolean de leitura/gravação que determina se o painel Script será expandido ou ocultado.

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

Arquivos

Suportado no Windows PowerShell ISE 2.0 e posteriores.

A propriedade somente leitura que obtém a coleção de arquivos de script abertos na guia PowerShell.

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

Saída

Esse recurso está presente no ISE do Windows PowerShell 2.0, mas foi removido ou renomeado em versões posteriores do ISE. Em versões mais recentes do ISE do Windows PowerShell, você pode usar o objeto ConsolePane para os mesmos fins.

A propriedade somente leitura que obtém o Painel de saída do editor atual.

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

Prompt

Suportado no Windows PowerShell ISE 2.0 e posteriores.

A propriedade somente leitura que obtém o atual texto de solicitação. Observação: a função Prompt pode ser substituída pelo perfil do usuário. Se o resultado for diferente de uma cadeia simples, essa propriedade não retornará nada.

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

ShowCommands

Com suporte no Windows PowerShell ISE 3.0 e posterior, não está presente em versões anteriores.

A propriedade de leitura/gravação que indica se o Painel de comandos está sendo exibido no momento.

# 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

Suportado no Windows PowerShell ISE 2.0 e posteriores.

A propriedade somente leitura que obtém o texto do status PowerShellTab.

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

HorizontalAddOnToolsPaneOpened

Com suporte no Windows PowerShell ISE 3.0 e posterior, não está presente em versões anteriores.

A propriedade somente leitura que indica se o painel de ferramentas horizontal Complementos está aberto no momento.

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

VerticalAddOnToolsPaneOpened

Com suporte no Windows PowerShell ISE 3.0 e posterior, não está presente em versões anteriores.

A propriedade somente leitura que indica se o painel de ferramentas vertical Complementos está aberto no momento.

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

Consulte Também